{"componentChunkName":"component---src-templates-post-js","path":"/blog/flutter","webpackCompilationHash":"0f979b9b09e9513b4912","result":{"data":{"site":{"siteMetadata":{"keywords":["blog","ubug","tech blog","技术博客","playground"]}},"mdx":{"fields":{"title":"🎨 使用 flutter 构建移动端 App","tips":[],"categories":["code"],"datetime":"2019-11-10 16:22:11","noFooter":false,"description":"flutter 已经不算是新生的事物了，毫无疑问是一个非常优秀、很有前景的技术栈，但是并不能说生产环境里这个一个多么低门槛的完美解决方案。","plainTextDescription":"flutter 已经不算是新生的事物了，毫无疑问是一个非常优秀、很有前景的技术栈，但是并不能说生产环境里这个一个多么低门槛的完美解决方案。\n","author":"Ubug","banner":{"childImageSharp":{"fluid":{"tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='100'%3e%3cpath%20d='M235%201l26%2016%2026%2015v9l-20-11-20-12-9%205-9%206-1%2023v24l-34-20-33-19-1%204v4l24%2014%2024%2014v14l-4-2-3-2v4c0%204%202%205-22-9l-19-11-26%2016-28%2016a2065%202065%200%2000120%200l-6-4c-5-2-7-4-6-4h3l6%205c7%204%207%204%2016%204l9-1c-2-2-23-13-25-12-4%201%203-3%2040-24%2035-21%2039-23%2041-22%203%203%2056%2033%2057%2033s-8%206-20%2012l-22%2013%2040%201h41V0H279l-7%204-6%204-8-4c-6-4-7-4-15-4l-8%201M20%2019l-7%207%202%202c2%201%202%201%2011-7l8-9h-4c-3%200-4%201-10%207m3%209l-4%203%204%204c3%203%204%204%207%204%205%200%205%200%201-5l-3-3%203-3%203-4h-3c-3%200-5%201-8%204m184%2013l-5%203%2018%2011-8-17-5%203'%20fill='%23573ede'%20fill-rule='evenodd'/%3e%3c/svg%3e","aspectRatio":3.9900249376558605,"src":"/static/b5540b62e5e351560b4a55e1a7a78026/cfd9e/banner.png","srcSet":"/static/b5540b62e5e351560b4a55e1a7a78026/82675/banner.png 500w,\n/static/b5540b62e5e351560b4a55e1a7a78026/fef60/banner.png 1000w,\n/static/b5540b62e5e351560b4a55e1a7a78026/cfd9e/banner.png 1600w","srcWebp":"/static/b5540b62e5e351560b4a55e1a7a78026/1f191/banner.webp","srcSetWebp":"/static/b5540b62e5e351560b4a55e1a7a78026/7fe04/banner.webp 500w,\n/static/b5540b62e5e351560b4a55e1a7a78026/d619e/banner.webp 1000w,\n/static/b5540b62e5e351560b4a55e1a7a78026/1f191/banner.webp 1600w","sizes":"(max-width: 1600px) 100vw, 1600px"}}},"bannerCredit":null,"slug":"/blog/flutter","tags":["整理","思考","flutter"]},"headings":[{"value":"〇、flutter 是什么?","depth":2},{"value":"一、为什么选择 Flutter","depth":2},{"value":"二、简单比较","depth":2},{"value":"跨平台与 React Native 比较","depth":3},{"value":"Dart 与 Typescript 和 ES6+ 的比较","depth":3},{"value":"三、感受明显的优点","depth":2},{"value":"上手很快，结果很棒","depth":3},{"value":"组件化思想","depth":3},{"value":"开发体验很不错","depth":3},{"value":"四、很想吐槽的缺点","depth":2},{"value":"混合开发","depth":3},{"value":"生态","depth":3},{"value":"标准化","depth":3},{"value":"嵌套太深","depth":3},{"value":"Debug 模式有些卡顿","depth":3},{"value":"开发体验不是很好","depth":3},{"value":"Dart 语言真心没那么好用","depth":3},{"value":"跨平台ui一致性","depth":3},{"value":"五、生产环境需要注意","depth":2},{"value":"1. 稳定性","depth":3},{"value":"2. 代码质量","depth":3},{"value":"3. 性能问题","depth":3},{"value":"4. 内存问题","depth":3},{"value":"六、总结","depth":2}],"body":"const _excluded = [\"components\"];\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }\n/* @jsx mdx */\n\nconst _frontmatter = {\n  \"slug\": \"flutter\",\n  \"title\": \"🎨 使用 flutter 构建移动端 App\",\n  \"date\": \"2019-11-10 16:22:11\",\n  \"author\": \"Ubug\",\n  \"description\": \"flutter 已经不算是新生的事物了，毫无疑问是一个非常优秀、很有前景的技术栈，但是并不能说生产环境里这个一个多么低门槛的完美解决方案。\",\n  \"categories\": [\"code\"],\n  \"tags\": [\"整理\", \"思考\", \"flutter\"],\n  \"banner\": \"../flutter-hero-with-image-fit/banner.png\"\n};\nconst makeShortcode = name => function MDXDefaultShortcode(props) {\n  console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n  return mdx(\"div\", props);\n};\nconst WithFigcaption = makeShortcode(\"WithFigcaption\");\nconst layoutProps = {\n  _frontmatter\n};\nconst MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  let {\n      components\n    } = _ref,\n    props = _objectWithoutProperties(_ref, _excluded);\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"hr\", null), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"\\u60F3\\u5206\\u4EAB\\u7684\\u662F\\u8BA9\\u4F60\\u77E5\\u9053 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"flutter\"), \" \\u662F\\u4E00\\u4E2A\\u975E\\u5E38\\u4E0D\\u9519\\u7684\\u8DE8\\u7AEF\\u89E3\\u51B3\\u65B9\\u6848\\uFF0C\\u5728\\u5F00\\u53D1\\u6548\\u7387\\u3001\\u7F16\\u7A0B\\u4F53\\u9A8C\\u3001\\u8868\\u73B0\\u529B\\u3001\\u6D41\\u7545\\u7B49\\u65B9\\u9762\\u8868\\u73B0\\u5F88\\u597D\\uFF0C\\u80FD\\u591F\\u627F\\u8F7D\\u51FA\\u8272\\u7684\\u4EA7\\u54C1\\u7684\\u5B9E\\u73B0\\u3002\\u4F46\\u662F\\u5982\\u679C\\u4F60\\u4EEC\\u7684\\u751F\\u4EA7\\u73AF\\u5883\\u8981\\u6C42\\u6BD4\\u8F83\\u4E25\\u683C\\u3001\\u9700\\u6C42\\u6709\\u4E9B\\u6781\\u81F4\\uFF0C\\u8FD8\\u662F\\u6709\\u5F88\\u591A\\u95EE\\u9898\\u8981\\u6CE8\\u610F\\u7684\\uFF0C\\u4E0D\\u8FC7\\u6280\\u672F\\u672C\\u8EAB\\u7684\\u53D1\\u5C55\\u8D8B\\u52BF\\u8FD8\\u662F\\u5F88\\u503C\\u5F97\\u671F\\u5F85\\u7684\\u3002\")), mdx(\"hr\", null), mdx(\"div\", {\n    style: {\n      display: 'flex',\n      justifyContent: 'center'\n    }\n  }, mdx(WithFigcaption, {\n    title: \"\\u4E1A\\u52A1\\u5E94\\u7528\\u6548\\u679C\",\n    mdxType: \"WithFigcaption\"\n  }, mdx(\"video\", {\n    controls: true,\n    autoPlay: true,\n    loop: true,\n    style: {\n      maxHeight: \"400px\",\n      maxWidth: \"100%\"\n    }\n  }, mdx(\"source\", {\n    src: \"https://fdb.ubug.io/storybook-videos/tongyu-demo.mp4\",\n    type: \"video/mp4\"\n  })))), mdx(\"h2\", null, \"\\u3007\\u3001flutter \\u662F\\u4EC0\\u4E48?\"), mdx(\"p\", null, mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"flutter\"), \" \\u6309\\u7167\\u5B98\\u65B9\\u7684\\u5B9A\\u4E49\\u662F\\u4E00\\u4E2A\\u9AD8\\u6027\\u80FD\\u3001\\u4E00\\u81F4\\u6027\\u7684\\u8DE8\\u7AEF app SDK\\uFF0C\\u5173\\u952E\\u8BCD\\u6709\\u8DE8\\u5E73\\u53F0\\u3001\\u5FEB\\u901F\\u3001\\u9AD8\\u8D28\\u91CF\\u3001\\u6F02\\u4EAE\\u3001\\u54CD\\u5E94\\u5F0F\\uFF0C\\u76EE\\u6807\\u662F\\u6784\\u5EFA\\u51FA\\u8DE8\\u7AEF\\u7684\\u9AD8\\u6027\\u80FD\\u5E94\\u7528\\u3002\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"Flutter is an app SDK for building high-performance, high-fidelity apps for iOS, Android, web (beta), and desktop (technical preview) from a single codebase.\")), mdx(\"p\", null, \"\\u4F5C\\u4E3A\\u79FB\\u52A8\\u7AEF\\u7684\\u975E\\u5E38\\u706B\\u70ED\\u7684\\u8DE8\\u7AEF\\u6280\\u672F\\u65B9\\u6848\\uFF0C\\u4E0E\\u4E4B\\u524D\\u7684\\u8DE8\\u7AEF\\u5C1D\\u8BD5\\u4E0D\\u540C\\uFF0C\\u9996\\u5148\\u5B9A\\u4F4D\\u5C31\\u662F\\u5BA2\\u6237\\u7AEF\\u7684\\u6280\\u672F\\u6808\\uFF0C\\u6CA1\\u6709\\u91C7\\u7528 webView\\uFF0C\\u4E5F\\u6CA1\\u6709\\u91C7\\u7528 JS \\u6865\\u63A5\\u65B9\\u6848\\uFF0C\\u81EA\\u884C\\u5B9E\\u73B0\\u4E86\\u4E00\\u5957 UI \\u5B9E\\u73B0\\u65B9\\u6848\\uFF0C\\u901A\\u8FC7\\u5E95\\u5C42\\u7684\\u8DE8\\u5E73\\u53F0\\u7ED8\\u56FE\\u65B9\\u6848\\u6E32\\u67D3\\u754C\\u9762\\u3002\"), mdx(\"p\", null, mdx(\"figure\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-figure\",\n    \"style\": {}\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"825px\"\n    }\n  }, \"\\n      \", mdx(\"a\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-link\",\n    \"href\": \"/static/7c0d03f5e7e930c9db72d279e76b129a/e3ddd/stru.png\",\n    \"style\": {\n      \"display\": \"block\"\n    },\n    \"target\": \"_blank\",\n    \"rel\": [\"noopener\"]\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"53.28185328185329%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAALCAIAAADwazoUAAAACXBIWXMAAAsTAAALEwEAmpwYAAACmElEQVQozx1L608SAQC/v6Q+tvWlrfkos5apLXu4udJ8rLn60MpmIpmAOi2TNMuZmWUg+J7xGHcgyYmCD840QZATPeQpSQW6gLgHPpDrcPvtt98TmF4xmJyo4adVgH7rW9OIbDDoRMbsM0J0QrimEdvgwXUto5lc7piXbc4xGwE6MYrpfkWCQD8CwhjSaZSlSqsuyJ9lymtuqppyobrzsuoMObtQw7+hakyXsZjquqoxT9nADNKkVbfGm6x/HADsXjL4LJ/M0GUFh/lkg7wskMNwNsRj1qz53vKpjhyQlwPVXQG5WSCX0VkKbtEE3xZwAeN2w5zH9N4kPzNWmQvVF2naLik46VL2VaghRcLKVzcXfGtJlbCywbo0aXUOVF8Mv0mTsvOUjcnzlGsJ2bKIUPVt+EXJZEupll88+eoYLfemWmsXvrAMPUVwc+kk/+5xXqZ9fUfz8qG+A9vxAPAC6gmS8xjepsSFekKoI3qniXdqvEuDtx4n4hnirRpvV+PdcNL2TjNMMu3WDgUY7SHf7iG4vHetPVrRTzwZwCvERH5HtKQ7WtAZfTpE1IwShR+ihV14WU+UadkjRIUYL/uIewL7gCNAu4NHi474yHdatkzLjbRihZYs08+/JsoFCY6E5sroymGa0Q9E9KNBmidP8v0+2hM8BEzmFbfXE9r1RfyzYf9MeFsX3tZH/frNjVmzWb9h02E2HWrVWcxaixFaNakwq2rVpDQbwXAoANiQfi86HrIPUbqTlCElhmTEkFRy+sTB3KnE4tnDxXPxpcw4cjr+42ICYyfstXGsNrHJOVp/fBCyAHshjPrrIHdXKVd3zP055huJeUWUs4t09xEuAekdIL3DpLOH9GvIf0Eqsk1F/GQSv/eJ4H+2ZsVo6VdP/QAAAABJRU5ErkJggg==')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"img\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"alt\": \"架构图\",\n    \"title\": \"架构图\",\n    \"src\": \"/static/7c0d03f5e7e930c9db72d279e76b129a/e3ddd/stru.png\",\n    \"srcSet\": [\"/static/7c0d03f5e7e930c9db72d279e76b129a/2c191/stru.png 259w\", \"/static/7c0d03f5e7e930c9db72d279e76b129a/86b01/stru.png 518w\", \"/static/7c0d03f5e7e930c9db72d279e76b129a/e3ddd/stru.png 825w\"],\n    \"sizes\": \"(max-width: 825px) 100vw, 825px\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    },\n    \"loading\": \"lazy\"\n  }), \"\\n  \"), \"\\n    \"), \"\\n    \", mdx(\"figcaption\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-figcaption\"\n  }, \"\\u67B6\\u6784\\u56FE\"), \"\\n  \")), mdx(\"p\", null, \"\\u8DE8\\u7AEF\\u7684\\u6280\\u672F\\u6808\\uFF0C\\u4E00\\u81F4\\u6027\\u548C\\u6027\\u80FD\\u662F\\u6BD4\\u8F83\\u91CD\\u8981\\u7684\\u70B9\\u3002\"), mdx(\"p\", null, \"\\u9AD8\\u6027\\u80FD\\u65B9\\u9762\\uFF1Aflutter \\u548C\\u5176\\u4ED6\\u5927\\u524D\\u7AEF\\u8DE8\\u5E73\\u53F0\\u6709\\u5F88\\u591A\\u4E0D\\u540C\\uFF0C\\u6CA1\\u6709 JS \\u8BED\\u8A00\\u7684\\u652F\\u6301\\u903B\\u8F91\\uFF0C\\u4E0D\\u9700\\u8981\\u6865\\u63A5\\u7684\\u6982\\u5FF5\\uFF0C\\u76F4\\u63A5\\u4E8C\\u8FDB\\u5236\\u652F\\u6301\\uFF0C\\u6027\\u80FD\\u548C\\u6D41\\u7545\\u5EA6\\u8981\\u597D\\u5F88\\u591A\\u3002\"), mdx(\"p\", null, \"\\u4E00\\u81F4\\u6027\\u65B9\\u9762\\uFF1A\\u4F9D\\u9760\\u8DE8\\u5E73\\u53F0Skia\\u56FE\\u5F62\\u5E93\\u5B9E\\u73B0\\u8DE8\\u7AEF\\u7684\\u529F\\u80FD\\uFF0C\\u50CF\\u7D20\\u7EA7\\u522B\\u7684\\u4E00\\u81F4\\u6027\\u63A7\\u5236\\uFF0C\\u80FD\\u591F\\u4FDD\\u8BC1\\u76F8\\u540C\\u7684\\u754C\\u9762\\u4E00\\u81F4\\u6027\\u3002\"), mdx(\"p\", null, mdx(\"figure\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-figure\",\n    \"style\": {}\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"768px\"\n    }\n  }, \"\\n      \", mdx(\"a\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-link\",\n    \"href\": \"/static/8ed645fedd956ae77dbacceef73a90f9/80a25/ui-same.png\",\n    \"style\": {\n      \"display\": \"block\"\n    },\n    \"target\": \"_blank\",\n    \"rel\": [\"noopener\"]\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"79.53667953667953%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAACXBIWXMAAAsSAAALEgHS3X78AAACoElEQVQ4y22UbU/aYBSG94+WbO6bcR/8J/6Xfd32YUtwLApMAqhZRDbHgL0Qo0OWZZuGocg7tVAqbwWhLdZ7zzmOUoYnNLR97l49L8/dezc3N3BGt9vFeDyeuTfROLXD4RC1Wg26rs/o7tHJaDSCJEl8lEolVKtVFiuKMgdrt9u4uLhgTT6ft7WDwYDXGZjNZuHz+eD3+7G1tYVAIICNjQ2Ew2H0+307A9M0sbm5CZfLhbW1NXi9Xng8Hrjdbuzv70+BmUwGwWAQoVCIQfQQncdiMfR6PRtoGAa2t7dZSwmsrq7yS3d2dpBKpaZAKvWuaLVa6HQ69jW1ZiR6d1c0m02ugIE10QfLGM/1S1XVOaCs1P9NgIXiZ/El9dEGZvKnOKpkeEE3dBhigYJgNPVJXJtjBFIfcFj5jY7WwUBk278aimdM1Ot13h0MPM5n8TzpQ/z0AB9T3/Aze45m+xbmBJriQX/6HZ4drCN0FBW6nEhG7Iq6gkqlOs3wJP8HTxIvsf79LY7P88gVKyhUJe6hcyhjAXwR8+Dp19fISkUUyjUeFNVPc7CBv05P4Pr8BhVVQltt8QKJLi8vZ6esG0hnfkDuKtC6PdHTIWsty0Kj0ZiWTPTRSOdGm+Km5djEzpJpKATibIXu+tpiGMUccGIhKmEioq3wP5CypmCNw4ozQFlYqdvXoF1pAiimLOAD4RACOksmYKFQEFtHQVW6taYqNPRPlqWXMLBZbyB2dIhAJAhVkfEl8Qle9yvkzs6gadp0KCKDlZUV3H/4AEuPl7C8vIylxUU8WlhgO9pOyeVyiEQiiEajSCaTSCQSeL+3h3g8Pudl0oSF1SaW293dZTum0+kpkD5FxWKRyymVypw+fUlkWb7TPUWxXi6X7YP0kxf/BZulljujgT5lAAAAAElFTkSuQmCC')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"img\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"alt\": \"一致性\",\n    \"title\": \"一致性\",\n    \"src\": \"/static/8ed645fedd956ae77dbacceef73a90f9/80a25/ui-same.png\",\n    \"srcSet\": [\"/static/8ed645fedd956ae77dbacceef73a90f9/2c191/ui-same.png 259w\", \"/static/8ed645fedd956ae77dbacceef73a90f9/86b01/ui-same.png 518w\", \"/static/8ed645fedd956ae77dbacceef73a90f9/80a25/ui-same.png 768w\"],\n    \"sizes\": \"(max-width: 768px) 100vw, 768px\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    },\n    \"loading\": \"lazy\"\n  }), \"\\n  \"), \"\\n    \"), \"\\n    \", mdx(\"figcaption\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-figcaption\"\n  }, \"\\u4E00\\u81F4\\u6027\"), \"\\n  \")), mdx(\"h2\", null, \"\\u4E00\\u3001\\u4E3A\\u4EC0\\u4E48\\u9009\\u62E9 Flutter\"), mdx(\"p\", null, \"\\u524D\\u7AEF\\u7684\\u6280\\u672F\\u9769\\u65B0\\u6D6A\\u6F6E\\u4E00\\u76F4\\u6CA1\\u6709\\u4E2D\\u65AD\\u8FC7\\uFF0C\\u4E5F\\u4E00\\u76F4\\u7528\\u5B9E\\u8DF5\\u6765\\u8865\\u5145\\u65B0\\u7684\\u80FD\\u529B\\uFF0C\\u8DF3\\u51FA\\u524D\\u7AEF\\u4E4B\\u5916\\u7684\\u6280\\u672F\\u4E5F\\u770B\\u4E86\\u5F88\\u591A\\u7684\\u6587\\u7AE0\\u548C\\u8BA2\\u9605\\uFF0C\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"flutter\"), \" \\u5728\\u6211\\u7684\\u9605\\u8BFB\\u4E2D\\u51FA\\u73B0\\u4E86\\u5F88\\u591A\\u6B21\\uFF0C\\u8BA9\\u6211\\u4E00\\u76F4\\u60F3\\u8981\\u5C1D\\u8BD5\\u8FD9\\u6837\\u4E00\\u4E2A\\u8DE8\\u5E73\\u53F0\\u65B9\\u9762\\u8FD8\\u80FD\\u517C\\u987E\\u6027\\u80FD\\u7684\\u4E00\\u4E2A\\u6280\\u672F\\u65B9\\u6848\\u3002\"), mdx(\"p\", null, mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"flutter\"), \" \\u6700\\u5927\\u7684\\u7279\\u70B9\\u5C31\\u662F\\u8DE8\\u5E73\\u53F0\\uFF0C\\u5C24\\u5176\\u662F\\u76EE\\u524D\\u5BA2\\u6237\\u7AEF \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Android\"), \" \\u548C \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"IOS\"), \" \\u90FD\\u8981\\u517C\\u987E\\u7684\\u573A\\u666F\\uFF0C\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"WebView\"), \"\\u3001\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Hybrid\"), \"\\u3001\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"RN\"), \"\\u3001\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Weex\"), \"\\xA0\\u7B49\\u5C1D\\u8BD5\\u4E5F\\u90FD\\u6CA1\\u505C\\u8FC7\\uFF0C\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"flutter\"), \" \\u51FA\\u8272\\u7684\\u6027\\u80FD\\uFF0C\\u52A0\\u4E0A\\u5927\\u516C\\u53F8\\u80CC\\u4E66\\uFF0C\\u8FD8\\u652F\\u6301\\u5D4C\\u5165\\u539F\\u751F\\u6A21\\u5F0F\\u7B49\\u4F18\\u70B9\\uFF0C\\u6210\\u4E3A\\u4E86\\u5F88\\u591A\\u516C\\u53F8\\u8DE8\\u7AEF\\u5F00\\u53D1\\u7684\\u65B0\\u9009\\u62E9\\u3002\\u76EE\\u524D\\u66F4\\u662F\\u8003\\u8651\\u4E86 web \\u548C \\u684C\\u9762\\u7AEF\\u7684\\u80FD\\u529B\\uFF0C\\u524D\\u9014\\u65E0\\u91CF\\u3002\"), mdx(\"p\", null, \"\\u5728\\u516C\\u53F8\\u65B0\\u7684\\u4E1A\\u52A1\\u8BBE\\u8BA1\\u4E2D\\u56E0\\u4E3A\\u6D89\\u53CA\\u5230\\u4E24\\u7AEF\\uFF0C\\u5F00\\u53D1\\u5DE5\\u4F5C\\u91CF\\u5F88\\u7D27\\u5F20\\uFF0C\\u4F5C\\u4E3A\\u524D\\u7AEF\\u80FD\\u591F\\u63D0\\u4F9B\\u7684\\u652F\\u6301\\u4E0D\\u591A\\uFF0C\\u6240\\u4EE5\\u6211\\u63D0\\u51FA\\u4E86\\u4E3B\\u8981\\u7684\\u754C\\u9762\\u5C42\\u4F7F\\u7528 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"flutter\"), \" \\u5B9E\\u73B0\\uFF0C\\u800C\\u4E8C\\u4E09\\u7EA7\\u7684\\u4F9D\\u8D56\\u5E95\\u5C42\\u80FD\\u529B\\u7684\\u754C\\u9762\\u4F7F\\u7528\\u539F\\u751F\\u7684\\u6280\\u672F\\uFF0C\\u4E00\\u65B9\\u9762\\u5206\\u62C5\\u5F88\\u591A\\u7684\\u5F00\\u53D1\\u4EFB\\u52A1\\uFF0C\\u53E6\\u4E00\\u65B9\\u9762\\u80FD\\u591F\\u4E0D\\u9700\\u8981\\u4E24\\u5957\\u4EE3\\u7801\\u7684\\u7E41\\u7410\\u3002\"), mdx(\"p\", null, \"\\u5728\\u82B1\\u4E86\\u70B9\\u65F6\\u95F4\\u8C03\\u7814\\u5C55\\u793A\\u6548\\u679C\\u4E4B\\u540E\\uFF0C\\u56E2\\u961F\\u51B3\\u5B9A\\u91C7\\u7528\\u8FD9\\u4E2A\\u65B9\\u6848\\u3002\\u4E8B\\u5B9E\\u8BC1\\u660E\\u9879\\u76EE\\u8FDB\\u5EA6\\u6BD4\\u5206\\u522B\\u5F00\\u53D1\\u597D\\u5F97\\u591A\\uFF0C\\u6548\\u7387\\u80FD\\u6548\\u5F88\\u597D\\uFF0C\\u53EF\\u4EE5\\u80DC\\u4EFB\\u751F\\u4EA7\\u73AF\\u5883\\u3002\\u4F46\\u662F\\u5728\\u5B9E\\u65BD\\u7684\\u8FC7\\u7A0B\\u4E2D\\uFF0C\\u53D1\\u73B0\\u5982\\u679C\\u8BA4\\u4E3A \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"flutter\"), \" \\u5C31\\u80FD\\u4E00\\u52B3\\u6C38\\u9038\\u7684\\u89E3\\u51B3\\u754C\\u9762\\u548C\\u4E1A\\u52A1\\u8FD8\\u662F too young \\u4E86\\u3002\"), mdx(\"p\", null, \"PS: \\u5F88\\u591A\\u7684\\u95EE\\u9898\\u53EF\\u80FD\\u662F\\u81EA\\u5DF1\\u7684\\u4E1A\\u52A1\\u5B9E\\u8DF5\\u4E0D\\u8DB3\\uFF0C\\u800C\\u4E14\\u9047\\u5230\\u95EE\\u9898\\u672C\\u8EAB\\u662F\\u4FC3\\u8FDB\\u89E3\\u51B3\\u65B9\\u6848\\u53D8\\u5F97\\u66F4\\u597D\\u7684\\u4E00\\u4E2A\\u9014\\u5F84\\uFF0C\\u7ED3\\u8BBA\\u662F\\u975E\\u5E38\\u770B\\u597D \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Flutter\"), \" \\u7684\\u5E94\\u7528\\u524D\\u666F\\uFF0C\\u6BEB\\u65E0\\u7591\\u95EE\\u3002\"), mdx(\"h2\", null, \"\\u4E8C\\u3001\\u7B80\\u5355\\u6BD4\\u8F83\"), mdx(\"p\", null, \"\\u6280\\u672F\\u672C\\u8EAB\\u6CA1\\u6709\\u4F18\\u7F3A\\u70B9\\uFF0C\\u53EA\\u662F\\u5177\\u4F53\\u7684\\u5E94\\u7528\\u6709\\u5F88\\u591A\\u65B9\\u9762\\u7684\\u4E0D\\u540C\\uFF0C\\u800C\\u4E14\\u4EC5\\u4EC5\\u662F\\u6211\\u4E2A\\u4EBA\\u89C2\\u70B9\\u3002\"), mdx(\"h3\", null, \"\\u8DE8\\u5E73\\u53F0\\u4E0E React Native \\u6BD4\\u8F83\"), mdx(\"p\", null, \"\\u4ECE\\u8DE8\\u5E73\\u53F0\\u65B9\\u9762\\u6765\\u8003\\u8651\\uFF0C\\u9996\\u5148\\u5F88\\u81EA\\u7136\\u7684\\u8DDF\\u4E4B\\u524D\\u7684 React Native \\u6BD4\\u8F83\\u3002RN \\u5F88\\u4E45\\u6CA1\\u6709\\u4E0A\\u624B\\uFF0C\\u76EE\\u524D\\u7684\\u5F00\\u53D1\\u4F53\\u9A8C\\u4E0D\\u77E5\\u9053\\u600E\\u4E48\\u6837\\uFF0C\\u4EE5\\u6211\\u7684\\u65E7\\u7ECF\\u9A8C\\u6765\\u770B\\u3002\\u754C\\u9762\\u6027\\u80FD\\u548C\\u5F00\\u53D1\\u4F53\\u9A8C\\u6BD4 RN \\u8981\\u597D\\u5F88\\u591A\\uFF0C\\u54CD\\u5E94\\u3001\\u6027\\u80FD\\u548C\\u52A8\\u753B\\u5F88\\u6D41\\u7545\\uFF0C\\u5927\\u5217\\u8868\\u7684\\u6ED1\\u52A8\\u975E\\u5E38\\u4E1D\\u6ED1\\uFF0C\\u70ED\\u91CD\\u8F7D\\u5F88\\u5FEB\\u7B49\\u7B49\\uFF0C\\u4E0D\\u81F3\\u4E8E\\u8BA9\\u6211\\u6709\\u4E0A\\u624B RN \\u540E\\uFF0C\\u5230\\u5904\\u76B1\\u7709\\u60F3\\u653E\\u5F03\\u90A3\\u79CD\\u611F\\u89C9\\u3002\\u4E0D\\u8FC7\\u597D\\u50CF\\u67E5\\u8D44 RN \\u76EE\\u524D\\u7684\\u6027\\u80FD\\u548C\\u4F53\\u9A8C\\u4E5F\\u6709\\u5F88\\u5927\\u6539\\u8FDB\\uFF0C\\u5177\\u4F53\\u8FD9\\u91CC\\u4E0D\\u6DF1\\u5165\\u4E86\\u3002\\u5927\\u5382\\u7684\\u5B9E\\u8DF5\\u4E5F\\u80FD\\u8BF4\\u660E\\u95EE\\u9898\\uFF0CFlutter \\u76EE\\u524D\\u5927\\u5382\\u91CC\\u7684\\u53E3\\u7891\\u867D\\u8BF4\\u6709\\u5F88\\u591A\\u6539\\u8FDB\\u548C\\u95EE\\u9898\\uFF0C\\u4E0D\\u8FC7\\u786E\\u5B9E\\u8981\\u597D\\u5F88\\u591A\\u3002\"), mdx(\"h3\", null, \"Dart \\u4E0E Typescript \\u548C ES6+ \\u7684\\u6BD4\\u8F83\"), mdx(\"p\", null, \"\\u8BED\\u8A00\\u5C42\\u9762 Dart \\u8BED\\u8A00\\u8981\\u65B0\\u5B66\\u4E60\\uFF0C\\u4F46\\u662F\\u5982\\u679C\\u4E4B\\u524D\\u719F\\u6089 JAVA\\u3001Typescript \\u6216\\u8005 ES6+ \\u4EE5\\u53CA\\u9762\\u5411\\u5BF9\\u8C61\\u7F16\\u7A0B\\u6982\\u5FF5\\u7684\\u8BDD\\u4E0A\\u624B\\u4F1A\\u5F88\\u7B80\\u5355\\uFF1B\\u4EE3\\u7801\\u7EC4\\u7EC7\\u548C react \\u6709\\u70B9\\u50CF\\uFF0C\\u54CD\\u5E94\\u5F0F\\u7684\\u7EC4\\u4EF6\\u5316\\uFF0C\\u751A\\u81F3\\u6709\\u5F88\\u591A\\u7406\\u5FF5\\u5F88\\u901A\\u7528\\uFF1BUI \\u5C42\\u9762\\u5E76\\u6CA1\\u6709\\u5F88\\u9AD8\\u7684\\u95E8\\u69DB\\uFF0C\\u8868\\u73B0\\u529B\\u5F88\\u597D\\uFF0CJSX \\u7684\\u706B\\u70ED\\u4E00\\u5B9A\\u7A0B\\u5EA6\\u4E5F\\u8BF4\\u660E\\u7C7B\\u4F3C\\u7684\\u5F00\\u53D1\\u4F53\\u9A8C\\u8FD8\\u662F\\u5F88\\u80FD\\u88AB\\u63A5\\u53D7\\u7684\\u3002\\u800C\\u4E14 Dart \\u7EBF\\u7A0B\\u6A21\\u5F0F\\u3001\\u4EE3\\u7801\\u7EC4\\u7EC7\\u65B9\\u5F0F\\u4EE5\\u53CA\\u8FD8\\u7B97\\u5F88\\u5B8C\\u5584\\u7684\\u5F00\\u53D1\\u73AF\\u5883\\uFF0C\\u8BA9\\u5F00\\u53D1\\u95E8\\u69DB\\u90FD\\u6BD4\\u539F\\u751F\\u8981\\u4F4E\\u4E00\\u4E9B\\u3002\"), mdx(\"h2\", null, \"\\u4E09\\u3001\\u611F\\u53D7\\u660E\\u663E\\u7684\\u4F18\\u70B9\"), mdx(\"h3\", null, \"\\u4E0A\\u624B\\u5F88\\u5FEB\\uFF0C\\u7ED3\\u679C\\u5F88\\u68D2\"), mdx(\"p\", null, \"\\u53EF\\u4EE5\\u8BF4\\u8FD9\\u662F\\u9664\\u4E86 js \\u8BA9\\u6211\\u6700\\u5FEB\\u4E0A\\u624B\\u7684\\u4E00\\u4E2A\\u6280\\u672F\\u3002\\u8BBF\\u95EE\\u5B98\\u7F51\\uFF08\\u63D0\\u4F9B\\u56FD\\u5185\\u4E13\\u7248\\u597D\\u8BC4\\uFF09\\uFF0C\\u4E0B\\u8F7D\\u6216\\u514B\\u9686\\u4E00\\u4E2A sdk\\uFF0C\\u8BBE\\u7F6E\\u73AF\\u5883\\u53D8\\u91CF\\uFF0Cflutter doctor \\u68C0\\u6D4B\\u95EE\\u9898\\u5E76\\u7ED9\\u51FA\\u8BE6\\u7EC6\\u8BF4\\u660E\\uFF0C\\u8FD8\\u7ED9\\u51FA\\u4FEE\\u590D\\u547D\\u4EE4\\uFF0C\\u7B80\\u76F4\\u4E0D\\u80FD\\u592A\\u5C0F\\u767D\\u53CB\\u597D\\uFF0C\\u800C\\u4E14\\u7F16\\u8F91\\u5668\\u63D2\\u4EF6\\u7B49\\u652F\\u6301\\u4E5F\\u6E05\\u695A\\u660E\\u767D\\uFF0C\\u57FA\\u672C\\u4E0A\\u7F51\\u901F\\u6CA1\\u95EE\\u9898\\u7684\\u60C5\\u51B5\\uFF0C\\u534A\\u4E2A\\u5C0F\\u65F6\\u80FD\\u628A demo \\u8DD1\\u51FA\\u6765\\u3002\"), mdx(\"p\", null, \"\\u8DD1\\u51FA\\u4E00\\u4E2A\\u53EF\\u4EE5\\u4EA4\\u4E92\\u7684 counter \\u5B9E\\u4F8B\\u4E4B\\u540E\\uFF0C\\u9F13\\u6363\\u51FA\\u591A\\u9875\\u9762\\u7684\\u590D\\u6742\\u5E94\\u7528\\u57FA\\u672C\\u4E0A\\u4FEE\\u4FEE\\u6539\\u6539\\u5C31\\u53EF\\u4EE5\\u5B9E\\u73B0\\u4E86\\uFF0C\\u800C\\u4E14\\u5168\\u90FD\\u662F\\u7EC4\\u4EF6\\u5316\\u7684\\u601D\\u60F3\\uFF0C\\u6240\\u4EE5\\u4E0D\\u9700\\u8981\\u8003\\u8651\\u6807\\u8BB0\\u3001\\u6837\\u5F0F\\u4E4B\\u7C7B\\u7684\\uFF0C\\u6284\\u4E0A\\u952E\\u76D8\\u5F00\\u59CB\\u5792\\u4EE3\\u7801\\u5C31\\u5B8C\\u4E86\\u3002\"), mdx(\"h3\", null, \"\\u7EC4\\u4EF6\\u5316\\u601D\\u60F3\"), mdx(\"p\", null, mdx(\"img\", {\n    parentName: \"p\",\n    \"src\": \"/diagram-widgetclass-a491a4292090e9425e477db7d4ba5902.svg\",\n    \"alt\": \"widget class hierarchy\"\n  })), mdx(\"p\", null, \"\\u5F97\\u76CA\\u4E8E dart \\u65B0\\u8BED\\u8A00\\uFF0C\\u903B\\u8F91\\u3001\\u6837\\u5F0F\\u3001\\u5E03\\u5C40\\u90FD\\u80FD\\u5728\\u4E00\\u4E2A\\u7EC4\\u4EF6\\u7684\\u7C92\\u5EA6\\u4E0A\\u805A\\u5408\\uFF0C\\u5F00\\u53D1\\u8005\\u80FD\\u591F\\u7075\\u6D3B\\u62C6\\u5206\\u62FC\\u88C5\\uFF0C\\u6240\\u4EE5\\u5F00\\u53D1\\u8FC7\\u7A0B\\u5F88\\u6D41\\u7545\\u3002\\u518D\\u52A0\\u4E0A\\u54CD\\u5E94\\u5F0F\\u7684\\u6570\\u636E\\u548C\\u754C\\u9762\\u7ED1\\u5B9A\\uFF0C\\u5B9E\\u73B0\\u4E00\\u4E2A\\u529F\\u80FD\\u548C\\u7EC4\\u4EF6\\u57FA\\u672C\\u4E0A\\u5206\\u5206\\u949F\\u80FD\\u505A\\u5230\\uFF0C\\u8FD9\\u53EF\\u6BD4\\u539F\\u751F\\u7684\\u5F00\\u53D1\\u7075\\u6D3B\\u7684\\u591A\\u3002\\u6709\\u72B6\\u6001\\u548C\\u65E0\\u72B6\\u6001\\u7EC4\\u4EF6\\u7684\\u9884\\u8BBE\\u8DB3\\u591F\\u7B80\\u5355\\uFF0C\\u5185\\u7F6E\\u7684 \\u5B89\\u5353\\u548C IOS \\u9ED8\\u8BA4\\u6837\\u5F0F\\u7684\\u7EC4\\u4EF6\\u5E93\\u8DB3\\u591F\\u642D\\u8D77\\u4E00\\u4E2A\\u770B\\u8D77\\u6765\\u5F88\\u68D2\\u7684 demo \\u5E94\\u7528\\u3002\\u65E0\\u8BBA\\u4F60\\u4E4B\\u524D\\u6709\\u6CA1\\u6709\\u63A5\\u89E6\\u8FC7\\u7EC4\\u4EF6\\u5316\\u7684\\u62BD\\u8C61\\u601D\\u8003\\uFF0C\\u4E0A\\u624B\\u4E4B\\u540E\\uFF0C\\u5F88\\u5BB9\\u6613\\u4ECE\\u7B80\\u5355\\u7684\\u6309\\u94AE\\uFF0C\\u5230\\u7B80\\u5355\\u7684\\u9875\\u9762\\uFF0C\\u518D\\u5230\\u591A\\u9875\\u9762\\u590D\\u6742\\u7EC4\\u4EF6\\u5C01\\u88C5\\uFF0C\\u4E00\\u5207\\u90FD\\u5F88\\u81EA\\u7136\\u3002\"), mdx(\"h3\", null, \"\\u5F00\\u53D1\\u4F53\\u9A8C\\u5F88\\u4E0D\\u9519\"), mdx(\"p\", null, \"\\u5F97\\u76CA\\u4E8E\\u5B8C\\u5584\\u7684\\u63A5\\u53E3\\u80FD\\u529B\\u3001\\u6587\\u6863\\u652F\\u6301\\u548C\\u4EE3\\u7801\\u8865\\u5168\\uFF0C\\u5982\\u679C\\u60F3\\u8981\\u642D\\u5EFA\\u4E00\\u4E2A\\u7B80\\u5355 app\\uFF0C\\u57FA\\u7840\\u7EC4\\u4EF6\\u3001\\u8DEF\\u7531\\u3001\\u7F51\\u7EDC\\u8BF7\\u6C42\\u7B49\\u7B49\\u90FD\\u6709\\uFF0C\\u7A0D\\u5FAE\\u770B\\u4E0B\\u5C5E\\u6027\\u63A5\\u53E3\\u57FA\\u672C\\u4E0A\\u5C31\\u80FD\\u5199\\u51FA\\u6765\\u4E86\\u3002\\u6BD4\\u5982\\u5B98\\u65B9\\u5206\\u522B\\u63D0\\u4F9B\\u9ED8\\u8BA4\\u7EC4\\u4EF6\\u5E93\\uFF0C\\u6837\\u5F0F\\u98CE\\u683C\\u7EDF\\u4E00\\u3002\\u800C\\u4E14\\u6574\\u4E2A\\u5B98\\u7F51\\u7684\\u76EE\\u7684\\u5C31\\u662F\\u8BA9\\u4F60\\u4EE5\\u6700\\u5FEB\\u7684\\u901F\\u5EA6\\u5B9E\\u73B0\\u4E00\\u4E2Ademo\\uFF0C\\u800C\\u4E0D\\u662F\\u5404\\u79CD\\u94FA\\u57AB\\u548C\\u57FA\\u7840\\u6982\\u5FF5\\uFF0C\\u6587\\u6863\\u548C\\u63A5\\u53E3\\u611F\\u89C9\\u4E5F\\u662F\\u4E3A\\u4E86\\u5B9E\\u73B0\\u5E38\\u89C1\\u7684app\\u754C\\u9762\\uFF0C\\u5F88\\u591A\\u5E38\\u89C1\\u7684\\u7EC4\\u4EF6\\u90FD\\u88AB\\u62BD\\u8C61\\u5230\\u5B98\\u65B9\\u5E93\\uFF0C\\u65B0\\u624B\\u51E0\\u4E4E\\u4E0D\\u9700\\u8981\\u592A\\u6DF1\\u5165\\u7684\\u5B9A\\u5236\\u3002\\u800C\\u4E14\\u8FD8\\u6709 DevTools\\u3001Inspector\\u3001Performance\\u3001Profile\\u3001Memory \\u7B49\\u5DE5\\u5177\\u5E2E\\u52A9\\u6784\\u5EFA\\u66F4\\u9AD8\\u8D28\\u91CF\\u7684\\u4EE3\\u7801\\u3002\\u8FD9\\u6837\\u4E00\\u4E2A\\u5B66\\u4E60\\u66F2\\u7EBF\\u5BF9\\u5927\\u591A\\u8BF4\\u4EBA\\u7B80\\u76F4\\u592A\\u53CB\\u597D\\uFF0C\\u6240\\u4EE5\\u4E00\\u4E2A\\u597D\\u7684\\u5F00\\u53D1\\u4F53\\u9A8C\\u5BF9\\u4E00\\u95E8\\u8BED\\u8A00\\u7684\\u63A8\\u5E7F\\u8FD8\\u662F\\u5F88\\u91CD\\u8981\\u7684\\u3002\"), mdx(\"h2\", null, \"\\u56DB\\u3001\\u5F88\\u60F3\\u5410\\u69FD\\u7684\\u7F3A\\u70B9\"), mdx(\"p\", null, \"\\u7F3A\\u70B9\\u90E8\\u5206\\u5206\\u533A\\u524D\\u540E\\u671F\\uFF0C\\u524D\\u671F\\u6BD4\\u8F83\\u591A\\u7684\\u7F3A\\u70B9\\u53EF\\u80FD\\u90FD\\u662F\\u4E0D\\u4E60\\u60EF\\u3001\\u4E0D\\u548C\\u8C10\\uFF0C\\u4F46\\u662F\\u53EF\\u4EE5\\u89E3\\u51B3\\uFF0C\\u6700\\u7EC8\\u80FD\\u63A5\\u53D7\\u7684\\u3002\\u540E\\u671F\\u719F\\u7EC3\\u4E4B\\u540E\\uFF0C\\u4E1A\\u52A1\\u9700\\u6C42\\u9010\\u6B65\\u590D\\u6742\\u4E4B\\u540E\\uFF0C\\u6162\\u6162\\u7684\\u5C31\\u4F1A\\u51FA\\u73B0\\u5F88\\u591A\\u5E95\\u5C42\\u4E0D\\u7A33\\u5B9A\\u7684\\u5730\\u65B9\\u3002\"), mdx(\"h3\", null, \"\\u6DF7\\u5408\\u5F00\\u53D1\"), mdx(\"p\", null, \"\\u6574\\u4E2A\\u9879\\u76EE\\u662F\\u652F\\u6301\\u6DF7\\u5408\\u5F00\\u53D1\\u7684\\uFF0C\\u4F46\\u662F\\u6BD5\\u7ADF\\u662F\\u4E00\\u4E2A\\u4E0D\\u540C\\u7684\\u8BED\\u8A00\\u548C\\u6E32\\u67D3\\u673A\\u5236\\uFF0C\\u6CA1\\u529E\\u6CD5\\u505A\\u5230\\u7279\\u522B\\u7075\\u6D3B\\u3002\\u6BD4\\u5982\\u8DEF\\u7531\\u95EE\\u9898\\u3001\\u5171\\u4EAB\\u6570\\u636E\\u8D44\\u6E90\\u95EE\\u9898\\u3001\\u57CB\\u70B9\\u76D1\\u63A7\\u3001\\u5F88\\u591ASDK\\u7B49\\uFF0C\\u6D89\\u53CA\\u5230\\u539F\\u751F\\u90E8\\u5206\\u7684\\u5730\\u65B9\\u90FD\\u6216\\u591A\\u6216\\u5C11\\u4E0D\\u592A\\u548C\\u8C10\\u3002\\u6BD4\\u5982\\u4E1A\\u52A1\\u5B89\\u6392\\u662F\\u539F\\u751F\\u548Cflutter\\u8DEF\\u7531\\u4EA4\\u9519\\u8DF3\\u8F6C\\uFF0C\\u6216\\u8005\\u5D4C\\u5165\\u5230\\u539F\\u751F\\u4E2D\\u4E00\\u90E8\\u5206\\uFF0C\\u6027\\u80FD\\u548C\\u4F53\\u9A8C\\u4F1A\\u6253\\u6298\\u6263\\u3002\\u6BD5\\u7ADF\\u4E00\\u4E2A view \\u5C31\\u662F\\u4E00\\u5957 dartvm\\uFF0C\\u9664\\u975E\\u5E95\\u5C42\\u9B54\\u6539\\u3002\\u516C\\u53F8\\u6CA1\\u6709\\u80FD\\u529B\\u5728\\u8FD9\\u4E9B\\u95EE\\u9898\\u4E0A\\u6295\\u5165\\u7CBE\\u529B\\uFF0C\\u6240\\u4EE5\\u4E00\\u7EA7\\u754C\\u9762\\u90FD\\u7528 dart \\u6765\\u5B9E\\u73B0\\uFF0C\\u6D89\\u53CA\\u5177\\u4F53\\u529F\\u80FD\\u624D\\u56DE\\u5230\\u539F\\u751F\\u4E2D\\u3002\\u8FD9\\u4E2A\\u4E0D\\u7B97\\u5927\\u7F3A\\u70B9\\uFF0C\\u53EF\\u4EE5\\u63A5\\u53D7\\u3002\"), mdx(\"h3\", null, \"\\u751F\\u6001\"), mdx(\"p\", null, \"\\u867D\\u7136\\u73B0\\u5728\\u53D1\\u5C55\\u8FC5\\u901F\\uFF0C\\u793E\\u533A\\u6D3B\\u8DC3\\uFF0C\\u4F46\\u662F\\u4E0D\\u53EF\\u5426\\u8BA4\\u8FD8\\u5DEE\\u5F88\\u591A\\uFF0C\\u751A\\u81F3\\u6BD4 RN \\u90FD\\u5DEE\\u5F97\\u8FDC\\uFF0C\\u4F46\\u662F\\u6BD5\\u7ADF\\u8FD9\\u662F\\u4E00\\u4E2A 17 \\u5E74\\u624D\\u8BDE\\u751F\\u7684\\u4E1C\\u897F\\uFF0C\\u5F88\\u591A\\u9700\\u6C42\\u6CA1\\u6709\\u7279\\u522B\\u591A\\u7684\\u793E\\u533A\\u89E3\\u51B3\\u65B9\\u6848\\uFF0C\\u793E\\u533A\\u7684\\u5305\\u4E5F\\u6709\\u5F88\\u591A\\u534A\\u6210\\u54C1\\uFF0C\\u7ECF\\u5E38\\u9700\\u8981\\u81EA\\u5DF1 DIY\\u3002\\u5F53\\u7136\\u73B0\\u5728 sdk \\u90FD\\u8FD8\\u5728\\u9AD8\\u901F\\u8FED\\u4EE3\\u7684\\u8FC7\\u7A0B\\u4E2D\\uFF0C\\u8FD9\\u70B9\\u6CA1\\u529E\\u6CD5\\u82DB\\u6C42\\uFF0C\\u4E0D\\u8FC7\\u6211\\u76F8\\u4FE1\\u793E\\u533A\\u6D3B\\u8DC3\\u7684\\u60C5\\u51B5\\u4E0B\\uFF0C\\u5F88\\u5FEB\\u5C31\\u4F1A\\u6B23\\u6B23\\u5411\\u8363\\u7684\\u53D1\\u5C55\\u3002\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"PS: \\u73B0\\u5728 pub.dev \\u4E0A\\u5305\\u591A\\u5F97\\u591A\\u4E86\\uFF0C\\u867D\\u7136\\u5F88\\u591A\\u5305\\u4E5F\\u662F\\u7EF4\\u62A4\\u5F88\\u5DEE\\uFF0C\\u4F46\\u662F\\u60F3\\u8981\\u7684\\u4E1C\\u897F\\u57FA\\u672C\\u4E0A\\u90FD\\u80FD\\u627E\\u5230\\u4E86\\u3002\")), mdx(\"h3\", null, \"\\u6807\\u51C6\\u5316\"), mdx(\"p\", null, \"\\u73B0\\u5728\\u53D1\\u5C55\\u592A\\u5FEB\\uFF0C\\u6211\\u8BA4\\u4E3A\\u5B98\\u65B9\\u8FED\\u4EE3\\u8FC7\\u7A0B\\u66F4\\u770B\\u91CD\\u7684\\u662F\\u586B\\u5751\\u800C\\u4E0D\\u662F\\u7EDF\\u4E00\\uFF0C\\u6240\\u4EE5\\u6211\\u5728\\u4F7F\\u7528\\u7684\\u8FC7\\u7A0B\\u4E2D\\uFF0C\\u7EC4\\u4EF6\\u672C\\u8EAB\\u6CA1\\u95EE\\u9898\\uFF0C\\u4F46\\u662F\\u7528\\u8D77\\u6765\\u5C31\\u975E\\u5E38\\u522B\\u626D\\uFF0C\\u6BD4\\u5982\\u57FA\\u7840\\u7EC4\\u4EF6\\u5404\\u79CD\\u5C5E\\u6027\\u83AB\\u540D\\u5176\\u5999\\uFF0C\\u8868\\u610F\\u4E0D\\u660E\\u3001\\u7EC4\\u4EF6\\u5404\\u4E2A\\u5C5E\\u6027\\u5F88\\u72EC\\u7ACB\\u3001\\u6837\\u5F0F\\u548C\\u5E03\\u5C40\\u6DF7\\u7528\\u3001matrial \\u548C cupertino \\u4E24\\u4E2A\\u5E93\\u5F88\\u4E0D\\u7EDF\\u4E00\\u7B49\\u7B49\\uFF0C\\u5F53\\u7136\\u5E76\\u4E0D\\u662F\\u5927\\u95EE\\u9898\\uFF0C\\u5C31\\u662F\\u7528\\u8D77\\u6765\\u4E0D\\u592A\\u4E60\\u60EF\\u3002\"), mdx(\"p\", null, \"\\u6700\\u7B80\\u5355\\u7684\\u4E00\\u4E2A\\u4F8B\\u5B50\\uFF0Ccontainer \\u7684 color \\u5C5E\\u6027\\u8868\\u793A\\u7684\\u662F decoration \\u7684 color \\u5C5E\\u6027\\u5F15\\u7528\\uFF0C\\u610F\\u601D\\u662F\\u5BB9\\u5668\\u80CC\\u666F\\u8272\\uFF0C\\u4E0D\\u662F backgroundcolor \\u800C\\u76F4\\u63A5\\u7528\\u4E86 color \\u5355\\u8BCD\\uFF0Ccss \\u7528\\u7684\\u591A\\u4E86\\u4F1A\\u975E\\u5E38\\u4ECB\\u610F\\uFF0C\\u540C\\u65F6\\u6837\\u5F0F\\u662F\\u76F4\\u63A5\\u5C5E\\u6027\\u3002text \\u7EC4\\u4EF6\\u7684\\u6837\\u5F0F\\u9700\\u8981\\u5199\\u5728 style \\u91CC\\u9762\\uFF0C\\u7528 fontstyle \\u8868\\u793A\\uFF0C\\u5176\\u4E2D\\u6709\\u4E00\\u4E2A color \\u5C5E\\u6027\\u8868\\u793A\\u6587\\u5B57\\u989C\\u8272\\u3002icon \\u7EC4\\u4EF6\\uFF0Ccolor \\u5374\\u662F\\u4E00\\u4E2A\\u76F4\\u63A5\\u5C5E\\u6027\\uFF0C\\u8868\\u793A\\u56FE\\u6807\\u989C\\u8272\\u3002\\u4E0D\\u540C\\u7684\\u7EC4\\u4EF6\\u5C5E\\u6027\\u8868\\u610F\\u53EF\\u80FD\\u6839\\u636E\\u7EC4\\u4EF6\\u8BBE\\u8BA1\\u6700\\u4F18\\uFF0C\\u4F46\\u662F\\u5BF9\\u4E8E\\u6211\\u53EF\\u80FD\\u89C9\\u5F97\\u6709\\u4E00\\u4E9B\\u5947\\u602A\\uFF0C\\u6240\\u4EE5\\u9700\\u8981\\u8BB0\\u5FC6\\u7684\\u5F88\\u591A\\uFF0C\\u6709\\u81EA\\u52A8\\u8865\\u5168\\u52A0\\u4E0A\\u7528\\u7684\\u591A\\u4E86\\u4F1A\\u597D\\u4E00\\u4E9B\\uFF0C\\u4F46\\u662F\\u521D\\u5B66\\u8005\\u67E5\\u8868\\u662F\\u4E0D\\u4F1A\\u5C11\\u7684\\u3002\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"PS: \\u5728\\u4EA7\\u54C1\\u8FED\\u4EE3\\u5F88\\u4E45\\u4E4B\\u540E\\uFF0C\\u7EC4\\u4EF6\\u5316\\u7684\\u5C01\\u88C5\\u548C\\u62BD\\u8C61\\uFF0C\\u8BA9\\u5185\\u7F6E\\u7684\\u8FD9\\u4E9B\\u7EC4\\u4EF6\\u7684\\u4F53\\u9A8C\\u5DEE\\u5F02\\u5F31\\u5316\\u4E86\\u4E00\\u4E9B\\u3002\")), mdx(\"h3\", null, \"\\u5D4C\\u5957\\u592A\\u6DF1\"), mdx(\"p\", null, \"\\u8FD9\\u4E2A\\u4E0D\\u662F\\u8BED\\u8A00\\u672C\\u8EAB\\u7684\\u7F3A\\u70B9\\uFF0C\\u800C\\u662F\\u8BBE\\u8BA1\\u6A21\\u5F0F\\u4E0A\\u7684\\u9009\\u62E9\\uFF0C\\u7C7B\\u4F3C\\u7684\\u7EC4\\u4EF6\\u5316\\u90FD\\u662F\\u8FD9\\u4E2A\\u6837\\u5B50\\u7684\\uFF0C\\u5404\\u4E2A\\u7EC4\\u4EF6\\u7C7B\\u7684\\u5D4C\\u5957\\u53D8\\u6210\\u4E86\\u5D4C\\u5957\\u5730\\u72F1\\uFF0C\\u5728 react \\u4E2D\\uFF0C\\u4E13\\u95E8\\u5F15\\u5165\\u4E86 hooks \\u6765\\u7528\\u4E00\\u5C42\\u7EC4\\u4EF6\\u89E3\\u51B3\\u751F\\u547D\\u72B6\\u6001\\u7684\\u5F71\\u54CD\\u3002\\u4E0D\\u8FC7\\u4E5F\\u53EF\\u80FD\\u662F react \\u7684 render \\u6BD4 flutter \\u7684 build \\u66F4\\u91CD\\uFF0C\\u6240\\u4EE5\\u624D\\u663E\\u5F97\\u5D4C\\u5957\\u5F88\\u6DF1\\u4E0D\\u592A\\u597D\\uFF0Cflutter \\u8FD9\\u5E76\\u6CA1\\u6709\\u90A3\\u4E48\\u5F71\\u54CD\\u3002\"), mdx(\"h3\", null, \"Debug \\u6A21\\u5F0F\\u6709\\u4E9B\\u5361\\u987F\"), mdx(\"p\", null, \"Dart \\u6709 JIT(Just In Time) \\u548C AOT(Ahead Of Time) \\u7684\\u7F16\\u8BD1\\u6A21\\u5F0F\\u3002flutter \\u6BD4 dart \\u6709\\u589E\\u52A0\\u4E86\\u5F88\\u591A\\u7F16\\u8BD1\\u6A21\\u5F0F\\uFF0C\\u5728 debug \\u4E0B\\u65B9\\u4FBF\\u5F00\\u53D1\\u9700\\u8981\\u7167\\u987E\\u5230\\u70ED\\u91CD\\u8F7D\\u548C\\u65AD\\u70B9\\u7B49\\uFF0C\\u52A8\\u6001\\u751F\\u6210\\u4EE3\\u7801\\u3001\\u8C03\\u8BD5 UI \\u7B49\\uFF0C\\u4F7F\\u7528\\u7C7B\\u4F3C JIT \\u6A21\\u5F0F\\uFF0C\\u6240\\u4EE5\\u5F88\\u591A\\u7684\\u8FD0\\u884C\\u4F18\\u5316\\u80AF\\u5B9A\\u4F1A\\u51FA\\u73B0\\u5361\\u987F\\uFF0C\\u5728\\u4E1A\\u52A1\\u4E0A\\u4E86\\u89C4\\u6A21\\u4E4B\\u540E\\uFF0C\\u8DEF\\u7531\\u4E24\\u4E09\\u5C42\\uFF0C\\u5341\\u51E0\\u4E2A\\u5217\\u8868\\u9875\\u9762\\u4E4B\\u540E\\uFF0C\\u4F4E\\u7AEF\\u673A\\u5668\\u5C31\\u660E\\u663E\\u5361\\u987F\\u4E86\\uFF0C\\u4E0D\\u8FC7\\u8FD9\\u4E5F\\u5C31\\u662F debug \\u6A21\\u5F0F\\u4E0B\\u70ED\\u66F4\\u65B0\\u7684\\u6298\\u4E2D\\u4E0D\\u80FD\\u82DB\\u6C42\\uFF0C\\u53EA\\u662F\\u4E9B\\u8BB8\\u7684\\u5F71\\u54CD\\u5F00\\u53D1\\u4F53\\u9A8C\\u3002\"), mdx(\"h3\", null, \"\\u5F00\\u53D1\\u4F53\\u9A8C\\u4E0D\\u662F\\u5F88\\u597D\"), mdx(\"p\", null, \"\\u5185\\u5B58\\u4F18\\u5316\\u3001\\u957F\\u56FE\\u7247\\u5217\\u8868\\u3001\\u591A\\u9875\\u9762\\u5806\\u6808\\u7B49\\u95EE\\u9898\\uFF0C\\u4E00\\u822C\\u9700\\u8981\\u82B1\\u5F88\\u591A\\u65F6\\u95F4\\u5904\\u7406\\uFF0C\\u867D\\u7136\\u5176\\u4ED6\\u5F00\\u53D1\\u4E5F\\u4F1A\\u6D89\\u53CA\\uFF0C\\u4F46\\u662F\\u8FD9\\u91CC\\u6D89\\u53CA\\u5230\\u539F\\u751F\\u7684\\u914D\\u5408\\uFF0C\\u6240\\u4EE5\\u8C03\\u8BD5\\u4F53\\u9A8C\\u4E0D\\u662F\\u5F88\\u597D\\u3002\"), mdx(\"h3\", null, \"Dart \\u8BED\\u8A00\\u771F\\u5FC3\\u6CA1\\u90A3\\u4E48\\u597D\\u7528\"), mdx(\"p\", null, \"\\u4E0A\\u624B\\u95E8\\u69DB\\u4E0D\\u9AD8\\uFF0C\\u4F46\\u662F\\u7528\\u591A\\u4E86\\u4E4B\\u540E\\u53D1\\u73B0\\u751F\\u6001\\u8FD8\\u6709\\u5F88\\u591A\\u4E0D\\u8DB3\\uFF0C\\u6D53\\u6D53\\u7684 JAVA OOPS \\u98CE\\u683C\\u3002\\u4E0E TypeScript \\u751F\\u6001\\u76F8\\u6BD4\\uFF0C\\u5728\\u8BED\\u8A00\\u8BBE\\u8BA1\\u4E0A\\u548C\\u751F\\u6001\\u5EFA\\u8BBE\\u4E0A\\u5E76\\u4E0D\\u592A\\u597D\\u3002\\u4E0D\\u8FC7 Dart \\u7684\\u7248\\u672C\\u8FED\\u4EE3\\u4E00\\u76F4\\u5F88\\u5FEB\\uFF0C\\u90FD\\u662F\\u5EFA\\u8BBE\\u4E2D\\u7684\\u4E1C\\u897F\\u3002\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"PS: null safety \\u4E0A\\u7EBF\\u540E\\uFF0C\\u6076\\u5FC3\\u7684\\u6539\\u4E86\\u65E7\\u4EE3\\u7801\\u4E4B\\u540E\\uFF0C\\u7C7B\\u578B\\u63A8\\u65AD\\u723D\\u4E86\\u5F88\\u591A\\u5F88\\u591A\\u3002\")), mdx(\"h3\", null, \"\\u8DE8\\u5E73\\u53F0ui\\u4E00\\u81F4\\u6027\"), mdx(\"p\", null, \"\\u8FD9\\u4E2A\\u4E4B\\u524D\\u4E00\\u76F4\\u89C9\\u5F97\\u662F\\u4E00\\u4E2A\\u975E\\u5E38\\u597D\\u7684\\u4F18\\u70B9\\uFF0C\\u56E0\\u4E3A\\u80FD\\u591F\\u4FDD\\u8BC1\\u7CBE\\u529B\\u4E0D\\u81F3\\u4E8E\\u5206\\u6563\\u5230\\u4E24\\u4E2A\\u5E73\\u53F0\\u3002\\u4F46\\u662F\\u6DF1\\u5165\\u4E4B\\u540E\\uFF0C\\u53D1\\u73B0\\u4E0D\\u4EC5\\u4EC5\\u9700\\u8981\\u61C2\\u5F97 dart\\uFF0C\\u539F\\u751F\\u5F00\\u53D1\\u80FD\\u529B\\u4E5F\\u662F\\u9700\\u8981\\u6D89\\u53CA\\u7684\\u3002\\u800C\\u4E14\\u5404\\u79CD\\u73AF\\u5883\\u95EE\\u9898\\u3001\\u9002\\u914D\\u95EE\\u9898\\u3001\\u5E73\\u53F0\\u5DEE\\u5F02\\u771F\\u7684\\u6709\\u65F6\\u5019\\u9700\\u8981\\u6298\\u817E\\uFF0C\\u751A\\u81F3\\u4F60\\u6320\\u7834\\u8111\\u95E8\\u4E5F\\u4E0D\\u77E5\\u9053\\u4E3A\\u5565\\u3002\"), mdx(\"h2\", null, \"\\u4E94\\u3001\\u751F\\u4EA7\\u73AF\\u5883\\u9700\\u8981\\u6CE8\\u610F\"), mdx(\"h3\", null, \"1. \\u7A33\\u5B9A\\u6027\"), mdx(\"p\", null, \"\\u5D29\\u6E83\\u7387\\u662F\\u6709\\u70B9\\u9AD8\\u7684\\uFF0C\\u751F\\u4EA7\\u73AF\\u5883\\u7684\\u5E94\\u7528\\uFF0C\\u5343\\u5206\\u4E4B\\u51E0\\u7684\\u5D29\\u6E83\\u7387\\uFF08\\u8DDF\\u4EE3\\u7801\\u8D28\\u91CF\\u3001\\u76EE\\u6807\\u7528\\u6237\\u3001\\u4E1A\\u52A1\\u7C7B\\u578B\\u90FD\\u6709\\u5173\\u7CFB\\uFF09\\u3002\\u8FD9\\u4E2A\\u5BF9\\u4E8E\\u7528\\u6237\\u91CF\\u7A0D\\u5927\\u7684\\u516C\\u53F8\\u5C31\\u662F\\u4E00\\u4E2A\\u6B7B\\u5211\\u4E86\\uFF0C\\u6BD5\\u7ADF\\u4E07\\u5206\\u4E4B\\u4E00\\u7684\\u5D29\\u6E83\\u7387\\u624D\\u52C9\\u5F3A\\u80FD\\u63A5\\u53D7\\uFF0C\\u6211\\u4EEC\\u5728\\u5F00\\u53D1\\u7684\\u65F6\\u5019\\u4E5F\\u662F\\u9047\\u5230\\u4E86\\u5F88\\u591A\\u5954\\u6E83\\u7684\\u60C5\\u51B5\\uFF0C\\u867D\\u7136\\u90FD\\u80FD\\u89E3\\u51B3\\uFF0C\\u4F46\\u662F\\u8FD8\\u662F\\u6709\\u6982\\u7387\\u89E6\\u53D1\\u4E25\\u91CD bug\\uFF0C\\u51FA\\u73B0\\u4F53\\u9A8C\\u95EE\\u9898\\uFF0C\\u800C\\u4E14\\u90FD\\u662F\\u5076\\u53D1\\u7684\\uFF0C\\u5F88\\u96BE\\u53BB\\u8C03\\u8BD5\\u3002\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"PS: \\u7ECF\\u5386\\u4E86\\u5F88\\u957F\\u65F6\\u95F4\\u7684\\u4F18\\u5316\\u540E\\uFF0C\\u73B0\\u5728\\u4EA7\\u54C1\\u7A33\\u5B9A\\u6027\\u597D\\u5F88\\u591A\\u3002\")), mdx(\"h3\", null, \"2. \\u4EE3\\u7801\\u8D28\\u91CF\"), mdx(\"p\", null, \"\\u4E0A\\u9762\\u8BF4\\u4E86\\u8FD9\\u4E2A\\u751F\\u6001\\u76EE\\u524D\\u5E76\\u6CA1\\u6709\\u90A3\\u4E48\\u6210\\u719F\\uFF0C\\u6240\\u4EE5\\u7B2C\\u4E09\\u65B9\\u652F\\u6301\\u4E0D\\u662F\\u5F88\\u597D\\uFF0C\\u6BD4\\u5982\\u63D2\\u4EF6\\u548C\\u5E93\\u7684\\u9009\\u62E9\\uFF0C\\u5F88\\u591A\\u7B2C\\u4E09\\u65B9\\u7684\\u63D2\\u4EF6\\u4EE3\\u7801\\u8D28\\u91CF\\u6CA1\\u6CD5\\u786E\\u4FDD\\uFF0C\\u6BD5\\u7ADF\\u5F88\\u591A\\u90FD\\u662F\\u9A8C\\u8BC1\\u6027\\u7684\\u65B9\\u6848\\uFF0C\\u6CA1\\u6709\\u5927\\u91CF\\u751F\\u4EA7\\u73AF\\u5883\\u7684\\u9A8C\\u8BC1\\uFF0C\\u5F88\\u5BB9\\u6613\\u51FA\\u73B0\\u95EE\\u9898\\u3002\\u751A\\u81F3\\u7ECF\\u5E38\\u4F1A\\u6709\\u9700\\u6C42\\u53D8\\u66F4\\u7684\\u65F6\\u5019\\uFF0C\\u9700\\u8981\\u4FEE\\u6539\\u7B2C\\u4E09\\u65B9\\u5E93\\uFF0C\\u751A\\u81F3\\u8F6C\\u4E3A\\u5185\\u90E8\\u7EF4\\u62A4\\u3002\\u6211\\u4EEC\\u5185\\u90E8\\u5F00\\u53D1\\u7684\\u65F6\\u5019\\uFF0C\\u56E0\\u4E3A\\u6392\\u671F\\u6BD4\\u8F83\\u7D27\\u5F20\\uFF0C\\u5F88\\u591A\\u65B9\\u6848\\u4F7F\\u7528\\u4E86\\u7B2C\\u4E09\\u65B9\\u7684\\uFF0C\\u4EE3\\u7801\\u8D28\\u91CF\\u826F\\u83A0\\u4E0D\\u9F50\\uFF0C\\u4E00\\u90E8\\u5206\\u7684\\u5B9E\\u73B0\\u9700\\u8981\\u9B54\\u6539\\uFF0C\\u6216\\u8005\\u6DFB\\u52A0\\u8FB9\\u754C\\u6761\\u4EF6\\u624D\\u80FD\\u9002\\u5408\\u6211\\u4EEC\\u7684\\u4E1A\\u52A1\\uFF0C\\u4EE3\\u7801\\u8D28\\u91CF\\u6709\\u65F6\\u5019\\u4E5F\\u662F\\u60F3\\u9A82\\u4EBA\\u3002\\u4E0D\\u8FC7\\u6700\\u540E\\u7684\\u7ED3\\u679C\\u8FD8\\u662F\\u597D\\u7684\\uFF0C\\u90FD\\u8FD8\\u7B97\\u80FD\\u63A5\\u53D7\\u3002\"), mdx(\"h3\", null, \"3. \\u6027\\u80FD\\u95EE\\u9898\"), mdx(\"p\", null, \"\\u5728\\u51B3\\u5B9A\\u7740\\u624B\\u4E1A\\u52A1\\u4E4B\\u524D\\u7684\\u8C03\\u7814\\u9636\\u6BB5\\uFF0C\\u5DF2\\u7ECF\\u89C1\\u8BC6\\u4E86 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"flutter\"), \" \\u5728\\u6027\\u80FD\\u4E0A\\u662F\\u600E\\u4E48\\u5AB2\\u7F8E\\u539F\\u751F\\uFF0C\\u540A\\u6253\\u4E00\\u4F17 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"frontend based frameworks\"), \" \\u7684\\uFF0C\\u6240\\u4EE5\\u8BA4\\u4E3A\\u6027\\u80FD\\u95EE\\u9898\\u4E0D\\u81F3\\u4E8E\\u6210\\u4E3A\\u74F6\\u9888\\u3002\"), mdx(\"p\", null, \"\\u4F46\\u662F\\u5728\\u505A\\u4E86\\u5F88\\u591A\\u9875\\u9762\\u4E4B\\u540E\\uFF0C\\u53D1\\u73B0\\u6027\\u80FD\\u8FD8\\u662F\\u51FA\\u73B0\\u4E86\\u95EE\\u9898\\uFF0C\\u5361\\u987F\\u95EE\\u9898\\u4E5F\\u662F\\u9700\\u8981\\u4E13\\u9879\\u89E3\\u51B3\\u3002\\u4E0D\\u8FC7\\u539F\\u751F\\u4EE3\\u7801\\u4E5F\\u9700\\u8981\\u8003\\u8651\\u6027\\u80FD\\uFF0C\\u8FD9\\u4E2A\\u4E0D\\u5FC5\\u591A\\u8BF4\\uFF0C\\u5C31\\u662F\\u6CA1\\u529E\\u6CD5\\u518D\\u8BA4\\u540C\\u6027\\u80FD\\u548C\\u539F\\u751F\\u80FD\\u5AB2\\u7F8E\\uFF0C\\u53EA\\u80FD\\u8BF4\\u8FD8\\u6709\\u5F88\\u591A\\u80FD\\u6539\\u8FDB\\u7684\\u5730\\u65B9\\u3002\\u6BD4\\u5982\\u8DEF\\u7531\\u9875\\u9762\\u5806\\u6808\\u4E00\\u65E6\\u6BD4\\u8F83\\u591A\\uFF0C\\u800C\\u4E14\\u90FD\\u6BD4\\u8F83\\u590D\\u6742\\u7684\\u65F6\\u5019\\uFF0C\\u9875\\u9762\\u4F9D\\u7136\\u4F1A\\u51FA\\u73B0\\u5361\\u987F\\u3002\"), mdx(\"p\", null, \"\\u4E0D\\u8FC7\\u6027\\u80FD\\u6709\\u95EE\\u9898\\uFF0C\\u5927\\u90E8\\u5206\\u786E\\u5B9E\\u505A\\u4E86\\u5F88\\u591A\\u7684\\u8BA1\\u7B97\\uFF0C\\u5F00\\u53D1\\u4E0A\\u8FD8\\u662F\\u80FD\\u591F\\u89C4\\u907F\\u5F88\\u591A\\u7684\\u8FD9\\u7C7B\\u95EE\\u9898\\u7684\\u3002\"), mdx(\"h3\", null, \"4. \\u5185\\u5B58\\u95EE\\u9898\"), mdx(\"p\", null, \"\\u5185\\u5B58\\u95EE\\u9898\\u53EF\\u80FD\\u5C31\\u6BD4\\u8F83\\u666E\\u904D\\u4E86\\uFF0C\\u5C24\\u5176\\u662F ios \\u7AEF\\u3002\\u5185\\u5B58\\u5360\\u7528\\u95EE\\u9898\\u3001\\u5185\\u5B58\\u6CC4\\u9732\\u5BFC\\u81F4\\u5D29\\u6E83\\u7684\\u6709\\u5F88\\u591A\\u3002\\u4F18\\u5316\\u65B9\\u6CD5\\u4E5F\\u5F88\\u6709\\u9650\\uFF0C\\u6BD5\\u7ADF flutter \\u4F5C\\u4E3A\\u5E94\\u7528\\u754C\\u9762\\u7ED8\\u5236\\u5F15\\u64CE\\uFF0C\\u5185\\u5B58\\u4E0A\\u6CA1\\u529E\\u6CD5\\u505A\\u7684\\u592A\\u5E72\\u51C0\\u3002\\u5BFC\\u81F4\\u6211\\u4E00\\u76F4\\u6000\\u7591 Google \\u7684\\u5DE5\\u7A0B\\u5E08\\u662F\\u4E0D\\u662F\\u89C9\\u5F97\\u5185\\u5B58\\u7684\\u95EE\\u9898\\u5C31\\u4ECE\\u6765\\u4E0D\\u662F\\u4E2A\\u95EE\\u9898\\uFF0CChrome \\u5185\\u5B58\\u4E5F\\u662F\\u8FD9\\u4E2A\\u9B3C\\u6837\\u5B50\\uFF0C\\u611F\\u89C9\\u7535\\u8111\\u4E0A\\u5582\\u4E86\\u4E00\\u4E2A\\u7279\\u522B\\u80FD\\u5403\\u5185\\u5B58\\u7684 Chrome \\u602A\\u517D\\u3002\"), mdx(\"p\", null, \"\\u8FD9\\u4E2A\\u95EE\\u9898\\u7684\\u89E3\\u51B3\\u5F88\\u591A\\u4E5F\\u662F\\u4E1A\\u52A1\\u5C42\\u9762\\u7684\\u95EE\\u9898\\uFF0C\\u6BD4\\u5982\\u4E1A\\u52A1\\u4E2D\\u9700\\u8981\\u5927\\u91CF\\u7684\\u56FE\\u7247\\uFF0C\\u5217\\u8868\\u5927\\u6982\\u6709\\u51E0\\u767E\\u5F20\\u7F29\\u7565\\u56FE\\uFF0C\\u5FEB\\u901F\\u6ED1\\u52A8\\u600E\\u4E48\\u63D0\\u9AD8\\u6027\\u80FD\\u3002\\u6574\\u4E2A\\u6EDA\\u52A8\\u5217\\u8868\\u91CC\\u9762\\u56FE\\u7247\\u7EC4\\u4EF6\\u7684\\u4F7F\\u7528\\u5F88\\u53EF\\u6015\\uFF0Cflutter \\u81EA\\u5DF1\\u6709\\u4E00\\u5957\\u5728 viewPort \\u5916\\u88AB\\u5F3A\\u5236\\u56DE\\u6536\\u7684\\u903B\\u8F91\\uFF0C\\u800C\\u4E14\\u52A0\\u4E0A\\u7EC4\\u4EF6\\u7684\\u9500\\u6BC1\\u548C\\u91CD\\u5EFA\\u903B\\u8F91\\u4EE5\\u51CF\\u5C11\\u5185\\u5B58\\u7684\\u5360\\u7528\\uFF0C\\u4ECD\\u7136\\u7ECF\\u5E38\\u51FA\\u73B0\\u6ED1\\u52A8\\u591A\\u6B21\\u3001\\u5207\\u6362\\u9875\\u9762\\u7B49\\u64CD\\u4F5C\\u4E4B\\u540E\\u5185\\u5B58\\u5C31\\u66B4\\u589E\\uFF0C\\u7136\\u540Eapp\\u5D29\\u6E83\\u3002\"), mdx(\"p\", null, \"\\u4E3A\\u6B64\\u771F\\u7684\\u82B1\\u4E86\\u5F88\\u591A\\u7CBE\\u529B\\u5C1D\\u8BD5\\u89E3\\u51B3\\uFF0C\\u53EF\\u4EE5\\u67E5\\u770B (flutter \\u6027\\u80FD\\u4F18\\u5316)\", \"[./flutter-performance]\", \" \\u770B\\u4E0B\\u3002\"), mdx(\"h2\", null, \"\\u516D\\u3001\\u603B\\u7ED3\"), mdx(\"p\", null, \"flutter \\u8FD9\\u4E2A\\u5F3A\\u5927\\u7684\\u5B58\\u5728\\u4E5F\\u4E0D\\u662F\\u4E00\\u7BC7\\u6587\\u7AE0\\u5C31\\u80FD\\u8BF4\\u7684\\u660E\\u767D\\u7684\\uFF0C\\u4F18\\u7F3A\\u70B9\\u4E5F\\u5168\\u90FD\\u662F\\u6211\\u7684\\u81EA\\u6211\\u7406\\u89E3\\uFF0C\\u66F4\\u4F55\\u51B5\\u73B0\\u5728\\u4E5F\\u5E76\\u4E0D\\u662F\\u6211\\u7684\\u4E3B\\u8981\\u5F00\\u53D1\\u8BED\\u8A00\\uFF0C\\u867D\\u7136\\u975E\\u5E38\\u611F\\u5174\\u8DA3\\uFF0C\\u82B1\\u4E86\\u5F88\\u591A\\u65F6\\u95F4\\u505A\\u51FA\\u6765\\u4E86\\u4EA7\\u54C1\\uFF0C\\u4F46\\u662F\\u5F88\\u591A\\u6DF1\\u5165\\u7684\\u4E1C\\u897F\\u6CA1\\u6765\\u5F97\\u53CA all in flutter\\uFF0C\\u76F8\\u4FE1\\u5982\\u679C\\u4E1A\\u52A1\\u4E2D\\u8FD9\\u5757\\u52A0\\u7801\\u53D1\\u5C55\\u4E86\\uFF0C\\u80AF\\u5B9A\\u80FD\\u53D1\\u73B0\\u66F4\\u591A\\u597D\\u73A9\\u6709\\u8DA3\\u7684\\u4E1C\\u897F\\u3002\\u6211\\u4E5F\\u975E\\u5E38\\u770B\\u597D flutter \\u7684\\u53D1\\u5C55\\uFF0C2020 \\u4E00\\u5B9A\\u5728\\u8FD9\\u65B9\\u9762\\u5C1D\\u8BD5\\u4E00\\u4E9B\\u4E0D\\u4E00\\u6837\\u7684\\u4E1C\\u897F\\u3002\"));\n}\n;\nMDXContent.isMDXComponent = true;"}},"pageContext":{"isCreatedByStatefulCreatePages":false,"id":"bbc7ba09-87e9-5f54-9e3a-9fb05f28af66","prev":{"fileAbsolutePath":"D:/ubug/storybook/content/blog/eslint.md","id":"35cce3eb-69c1-5c43-b940-6dd9198359ee","parent":{"name":"eslint","sourceInstanceName":"blog"},"excerpt":"想分享的是让你知道 ESLint 的简单背景和用法，以及知道 ESLint 怎么在项目中发挥作用的。 1. ESlint 是个什么 顾名思义  ECMAScript Linter  就是一个 ES 规范的检查器，负责检查代码语法/风格/错误。 在天地初开之时，JS 依靠语法宽松、动态运行的特点更容易低门槛实现业务获得青睐，但也是因此很多语法和逻辑错误无法在静态检查阶段被发现，于是 JSLint 语法检查器出世，能够满足基本的代码静态检查需求，但是扩展性差几乎不可配置，后来在此基础上又 fork…","fields":{"title":"🚑 Eslint 周边","slug":"/blog/eslint","description":"ESlint 一直在用，前端大杀器，团队协作最基础的一个支撑，简单写点记录下温故知新的东西.","date":"2019-11-18","redirects":null,"datetime":"2019-11-18 23:31:36","categories":["code"],"series":null,"tags":["ESLint","前端","最佳实践"],"status":"online"},"frontmatter":{"published":null,"tags":["ESLint","前端","最佳实践"],"theme":null,"slug":"eslint","date":"2019-11-18 23:31:36"},"body":"const _excluded = [\"components\"];\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }\n/* @jsx mdx */\n\nconst _frontmatter = {\n  \"slug\": \"eslint\",\n  \"title\": \"🚑 Eslint 周边\",\n  \"date\": \"2019-11-18 23:31:36\",\n  \"author\": \"Ubug\",\n  \"description\": \"ESlint 一直在用，前端大杀器，团队协作最基础的一个支撑，简单写点记录下温故知新的东西.\",\n  \"categories\": [\"code\"],\n  \"tags\": [\"ESLint\", \"前端\", \"最佳实践\"],\n  \"banner\": \"./banner.jpg\"\n};\nconst makeShortcode = name => function MDXDefaultShortcode(props) {\n  console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n  return mdx(\"div\", props);\n};\nconst layoutProps = {\n  _frontmatter\n};\nconst MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  let {\n      components\n    } = _ref,\n    props = _objectWithoutProperties(_ref, _excluded);\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"hr\", null), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"\\u60F3\\u5206\\u4EAB\\u7684\\u662F\\u8BA9\\u4F60\\u77E5\\u9053 ESLint \\u7684\\u7B80\\u5355\\u80CC\\u666F\\u548C\\u7528\\u6CD5\\uFF0C\\u4EE5\\u53CA\\u77E5\\u9053 ESLint \\u600E\\u4E48\\u5728\\u9879\\u76EE\\u4E2D\\u53D1\\u6325\\u4F5C\\u7528\\u7684\\u3002\")), mdx(\"hr\", null), mdx(\"h2\", null, \"1. ESlint \\u662F\\u4E2A\\u4EC0\\u4E48\"), mdx(\"p\", null, \"\\u987E\\u540D\\u601D\\u4E49 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"ECMAScript Linter\"), \" \\u5C31\\u662F\\u4E00\\u4E2A ES \\u89C4\\u8303\\u7684\\u68C0\\u67E5\\u5668\\uFF0C\\u8D1F\\u8D23\\u68C0\\u67E5\\u4EE3\\u7801\\u8BED\\u6CD5/\\u98CE\\u683C/\\u9519\\u8BEF\\u3002\"), mdx(\"p\", null, \"\\u5728\\u5929\\u5730\\u521D\\u5F00\\u4E4B\\u65F6\\uFF0CJS \\u4F9D\\u9760\\u8BED\\u6CD5\\u5BBD\\u677E\\u3001\\u52A8\\u6001\\u8FD0\\u884C\\u7684\\u7279\\u70B9\\u66F4\\u5BB9\\u6613\\u4F4E\\u95E8\\u69DB\\u5B9E\\u73B0\\u4E1A\\u52A1\\u83B7\\u5F97\\u9752\\u7750\\uFF0C\\u4F46\\u4E5F\\u662F\\u56E0\\u6B64\\u5F88\\u591A\\u8BED\\u6CD5\\u548C\\u903B\\u8F91\\u9519\\u8BEF\\u65E0\\u6CD5\\u5728\\u9759\\u6001\\u68C0\\u67E5\\u9636\\u6BB5\\u88AB\\u53D1\\u73B0\\uFF0C\\u4E8E\\u662F JSLint \\u8BED\\u6CD5\\u68C0\\u67E5\\u5668\\u51FA\\u4E16\\uFF0C\\u80FD\\u591F\\u6EE1\\u8DB3\\u57FA\\u672C\\u7684\\u4EE3\\u7801\\u9759\\u6001\\u68C0\\u67E5\\u9700\\u6C42\\uFF0C\\u4F46\\u662F\\u6269\\u5C55\\u6027\\u5DEE\\u51E0\\u4E4E\\u4E0D\\u53EF\\u914D\\u7F6E\\uFF0C\\u540E\\u6765\\u5728\\u6B64\\u57FA\\u7840\\u4E0A\\u53C8 fork \\u51FA\\u4E86 JSHint\\uFF0C\\u5F88\\u957F\\u65F6\\u95F4\\u5185\\u8FD9\\u4E24\\u4E2A\\u5DE5\\u5177\\u548C\\u76F8\\u5173\\u751F\\u6001\\u652F\\u6301\\u4E86\\u6700\\u5F00\\u59CB\\u7684\\u4EE3\\u7801\\u68C0\\u67E5\\u9700\\u6C42\\uFF0C\\u6BD5\\u7ADF\\u5F53\\u4E8B\\u7684 ES \\u7248\\u672C\\u7A33\\u5B9A\\u4E0D\\u53D8\\u4E86\\u5F88\\u957F\\u4E00\\u6BB5\\u65F6\\u95F4\\u3002\\u968F\\u7740\\u65F6\\u4EE3\\u7684\\u53D1\\u5C55\\uFF0C\\u66F4\\u52A0\\u597D\\u7528\\u5BB9\\u6613\\u914D\\u7F6E\\u7684 eslint \\u91C7\\u7528 ast \\u7B49\\u529F\\u80FD\\u5728 es5 \\u7684\\u65F6\\u4EE3\\u5927\\u653E\\u5F02\\u5F69\\uFF0C\\u6BD4\\u5982 babel-eslint\\uFF0C\\u4E00\\u4E2A\\u63D2\\u4EF6\\u5C31\\u652F\\u6301\\u4E86\\u66F4\\u9AD8\\u7EA7\\u7684\\u8BED\\u6CD5\\u3002\"), mdx(\"p\", null, \"\\u6700\\u5F00\\u59CB\\u7684\\u9700\\u6C42\\u662F\\u5728\\u4EE3\\u7801\\u4E0A\\u7EBF\\u4E4B\\u524D\\u68C0\\u67E5\\u51FA\\u4EE3\\u7801\\u4E2D\\u7684\\u8BED\\u6CD5\\u9519\\u8BEF\\u95EE\\u9898\\u3001\\u7F16\\u7801\\u95EE\\u9898\\u8FD8\\u6709\\u4E00\\u4E9B\\u4EE3\\u7801\\u98CE\\u683C\\u95EE\\u9898\\u3002\\u540E\\u9762\\u6709\\u7F16\\u8F91\\u5668\\u7684\\u652F\\u6301\\u5C31\\u53EF\\u4EE5\\u5728\\u7F16\\u7801\\u7684\\u8FC7\\u7A0B\\u4E2D\\u5B9E\\u65F6\\u7684\\u63D0\\u793A\\u8BED\\u6CD5\\u95EE\\u9898\\u3002\\u518D\\u540E\\u6765\\u53EF\\u4EE5\\u5728\\u56E2\\u961F\\u534F\\u4F5C\\u65F6\\u63D0\\u524D\\u5F3A\\u5236\\u68C0\\u67E5\\u9519\\u8BEF\\u548C\\u98CE\\u683C\\u3002\\u5230\\u73B0\\u5728\\u65E0\\u8BBA\\u662F\\u4E2A\\u4EBA\\u8FD8\\u662F\\u56E2\\u961F\\u4F5C\\u4E3A\\u5FC5\\u9009\\u529F\\u80FD\\u96C6\\u6210\\u5728\\u9879\\u76EE\\u4E2D\\u3002\"), mdx(\"p\", null, \"ESlint \\u5F97\\u4EE5\\u6D41\\u884C\\u7684\\u5F88\\u91CD\\u8981\\u539F\\u56E0\\u662F\\u7075\\u6D3B\\u7684\\u53EF\\u914D\\u7F6E\\u9879\\uFF0C\\u5305\\u62EC plugins \\u6269\\u5C55\\u3001\\u7EE7\\u627F\\u3001\\u89E3\\u6790\\u5668\\u3001\\u548C\\u7EC6\\u81F4\\u53EF\\u914D\\u7F6E\\u7684\\u89C4\\u5219\\u7B49\\u5F3A\\u5927\\u529F\\u80FD\\u3002\"), mdx(\"h2\", null, \"2. \\u7B80\\u5355\\u4F7F\\u7528\"), mdx(\"p\", null, \"\\u5728\\u5DE5\\u4F5C\\u6587\\u4EF6\\u5939\\u4E0B\\u6267\\u884C\\uFF1A\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-zsh\"\n  }, \"yarn add eslint --dev\\n\")), mdx(\"p\", null, \"\\u521D\\u59CB\\u5316\\u4E00\\u4E2A\\u6700\\u7B80\\u5355\\u7684\\u914D\\u7F6E\\u6587\\u4EF6\\uFF1A\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-zsh\"\n  }, \"npx eslint --init\\n\")), mdx(\"p\", null, \"\\u6B64\\u5904\\u5C31\\u4F1A\\u95EE\\u662F\\u8981 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"check syntax, find problems, and enforce code style\"), \" \\u7684\\u4E09\\u4E2A\\u529F\\u80FD\\uFF0C\\u8FD9\\u4E2A\\u4E5F\\u662F\\u6574\\u4E2A ESLint \\u7684\\u5168\\u90E8\\u76EE\\u7684\\u3002\"), mdx(\"p\", null, \"\\u518D\\u65B0\\u5EFA\\u4E00\\u4E2A\\u793A\\u4F8B\\u6587\\u4EF6\\uFF1A\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-javascript\"\n  }, \"// demo.js\\nfunction add(a, b) {\\n  return a + b;\\n}\\n\\nconsole.log(add(1, 1));\\n\")), mdx(\"p\", null, \"\\u8FD0\\u884C\\u68C0\\u67E5\\uFF1A\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-zsh\"\n  }, \"eslint demo.js\\n\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-log\"\n  }, \"/workspace/demo.js\\n\\n/Users/ubug/codes/kitu-demos/eslint/demo.js\\n  2:1   error  Expected indentation of 4 spaces but found 2  indent\\n  2:15  error  Extra semicolon                               semi\\n  5:1   error  Unexpected console statement                  no-console\\n  5:23  error  Extra semicolon                               semi\\n\\n\\u2716 4 problems (4 errors, 0 warnings)\\n  3 errors and 0 warnings potentially fixable with the `--fix` option.\\n\")), mdx(\"p\", null, \"\\u8BED\\u6CD5\\u6CA1\\u95EE\\u9898\\uFF0C\\u4F46\\u662F\\u6709 4 \\u4E2A\\u9519\\u8BEF\\uFF0C3\\u4E2A\\u53EF\\u4EE5\\u81EA\\u52A8\\u4FEE\\u590D\\u3002\\u5206\\u522B\\u662F \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"indent\"), \"\\u3001\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"semi\"), \"\\u3001\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"no-console\"), \" \\u4E09\\u4E2A\\u9519\\u8BEF\\uFF0C\\u6309\\u7167\\u8BF4\\u660E\\u6765\\u770B\\u5176\\u4E2D \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"indent\"), \"\\u3001\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"semi\"), \" \\u662F\\u6837\\u5F0F\\u95EE\\u9898\\uFF0C\\u800C \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"no-console\"), \" \\u662F\\u4E25\\u683C\\u7684\\u4EE3\\u7801\\u95EE\\u9898\\u3002\"), mdx(\"h2\", null, \"3. ESlint \\u5E38\\u89C1\\u65B9\\u6848\"), mdx(\"p\", null, \"\\u56E2\\u961F\\u534F\\u4F5C\\u5DE5\\u4F5C\\u4E2D\\uFF0C\\u4EE3\\u7801\\u89C4\\u8303\\u8D8A\\u6765\\u8D8A\\u4E3E\\u8DB3\\u8F7B\\u91CD\\uFF0C\\u4FDD\\u6301\\u540C\\u6837\\u7684\\u4EE3\\u7801\\u98CE\\u683C\\uFF0C\\u964D\\u4F4E\\u57FA\\u672C\\u9519\\u8BEF\\u7684\\u51FA\\u73B0\\u7B49\\u90FD\\u662F\\u534F\\u4F5C\\u7684\\u57FA\\u7840\\uFF0C\\u975E\\u5E38\\u7684\\u4F9D\\u8D56\\u7C7B\\u4F3C ESlint \\u8FD9\\u6837\\u7684\\u5DE5\\u5177\\u5B8C\\u6210\\u8FD9\\u4E9B\\u4E2A\\u76EE\\u6807\\uFF0C\\u6240\\u4EE5\\u5728\\u56E2\\u961F\\u4E2D\\u4F7F\\u7528 ESlint \\u7684\\u65B9\\u6848\\u8FD8\\u662F\\u5F88\\u91CD\\u8981\\u7684\\uFF0C\\u4E0D\\u8FC7\\u56E2\\u961F\\u7684\\u4F7F\\u7528\\u5B9A\\u5236\\u548C\\u4E2A\\u4EBA\\u7684\\u5B9A\\u5236\\u6DF1\\u5EA6\\u4E0D\\u540C\\uFF0C\\u56E2\\u961F\\u7684\\u914D\\u7F6E\\u66F4\\u503E\\u5411\\u4E8E\\u4E25\\u683C\\uFF0C\\u4E2A\\u4EBA\\u7684\\u66F4\\u4E60\\u60EF\\u7A0D\\u7A0D\\u5BBD\\u677E\\uFF0C\\u52A0\\u4E0A\\u81EA\\u5DF1\\u7684\\u504F\\u597D\\u3002\"), mdx(\"p\", null, mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"npx eslint --init\"), \" \\u5728\\u7B80\\u5355\\u7684\\u4E2A\\u4EBA\\u9879\\u76EE\\u4E2D\\u8DB3\\u591F\\u4F7F\\u7528\\u4E86\\uFF0C\\u4F46\\u662F\\u5BF9\\u4E8E\\u60F3\\u6DF1\\u5165\\u5B9A\\u5236\\u7684\\u9700\\u6C42\\uFF0C\\u89C4\\u5219\\u548C\\u63D2\\u4EF6\\u751F\\u6001\\u975E\\u5E38\\u4E30\\u5BCC\\u7684\\u4ECA\\u5929\\uFF0C\\u8FD9\\u6837\\u7684\\u5B9A\\u5236\\u5F88\\u8017\\u8D39\\u7CBE\\u529B\\uFF0C\\u597D\\u5728\\u4E1A\\u5185\\u5DF2\\u7ECF\\u5B8C\\u6210\\u4E86\\u6BD4\\u8F83\\u6210\\u719F\\u7684\\u9884\\u8BBE\\u65B9\\u6848\\uFF0C\\u6BD4\\u5982\\u6BD4\\u8F83\\u65E9\\u7684 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Airbnb\"), \"\\u3001\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Google\"), \" \\u5B9A\\u5236\\u7684\\u4E00\\u5957\\u89C4\\u8303\\uFF0C\\u5305\\u62EC ESlint \\u63A8\\u8350\\u7684 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Standard\"), \"\\u3001\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Recommanded\"), \" \\u7B49\\u3002\\u9664\\u6B64\\u4E4B\\u5916\\u8FD8\\u6709\\u5176\\u4ED6\\u5F88\\u591A\\u6846\\u67B6\\u3001\\u516C\\u53F8\\u4E5F\\u90FD\\u6709\\u5B9A\\u5236\\u7684\\u89C4\\u8303\\uFF0C\\u7528\\u6CD5\\u57FA\\u672C\\u5927\\u540C\\u5C0F\\u5F02\\uFF0C\\u63A8\\u8350\\u4E2A\\u4EBA\\u6839\\u636E\\u559C\\u597D\\u505A\\u4E00\\u4E2A\\u65B9\\u6848\\u53EF\\u4EE5\\u65B9\\u4FBF\\u5F88\\u591A\\u81EA\\u5DF1\\u7684\\u5C0F\\u9879\\u76EE\\u3002\"), mdx(\"p\", null, \"\\u5E38\\u89C1\\u7684\\u662F\\u4F7F\\u7528\\u8F83\\u5F3A\\u68C0\\u67E5\\u7684 airbnb \\u6216\\u8005 standard \\u8FDB\\u884C\\u8BED\\u6CD5\\u68C0\\u67E5\\uFF0C\\u642D\\u914D Prettier \\u9650\\u5236\\u4E00\\u4E9B\\u56E2\\u961F\\u7279\\u6709\\u7684\\u4E60\\u60EF\\u9650\\u5236\\uFF0C\\u7136\\u540E\\u914D\\u5408 Husky \\u6216\\u8005 pre-commit \\u52A0\\u4E0A lint-staged \\u5B9E\\u73B0\\u63D0\\u4EA4\\u524D\\u5F3A\\u5236\\u68C0\\u67E5\\u3002\"), mdx(\"p\", null, mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"standard\"), \" \\u4F8B\\u5B50\\uFF1A\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"yarn add --dev eslint-config-standard eslint-plugin-standard\\n\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-javascript\"\n  }, \"module.exports = {\\n  \\\"extends\\\": [\\\"standard\\\"],\\n  \\\"plugins\\\": [\\\"standard\\\"],\\n}\\n\")), mdx(\"h2\", null, \"4. Prettier\"), mdx(\"p\", null, \"\\u4E0A\\u9762\\u8BF4\\u7684 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Airbnb\"), \"\\u3001\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Standard\"), \"\\u3001\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Recommanded\"), \" \\u7B49\\u662F\\u6BD4\\u8F83\\u5B8C\\u6574\\u7684\\u8BED\\u6CD5\\u68C0\\u67E5\\uFF0C\\u4EE3\\u7801\\u89C4\\u8303\\uFF0C\\u683C\\u5F0F\\u5316\\uFF0C\\u4F46\\u662F \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Prettier\"), \" \\u662F\\u6BD4\\u8F83\\u7279\\u6B8A\\u7684\\u4E00\\u4E2A\\uFF0C\\u5B83\\u53EA\\u8D1F\\u8D23\\u4EE3\\u7801\\u7684\\u683C\\u5F0F\\u5316\\u3002\"), mdx(\"p\", null, \"\\u4E00\\u65B9\\u9762 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Prettier\"), \" \\u6709\\u72EC\\u7ACB\\u7684\\u5305\\uFF0C\\u53EF\\u4EE5\\u72EC\\u7ACB\\u6267\\u884C\\u4EE3\\u7801\\u7684\\u683C\\u5F0F\\u5316\\uFF0C\\u4E0D\\u4F9D\\u8D56 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"ESLint\"), \"\\u3002\\u53E6\\u4E00\\u65B9\\u9762\\u53EF\\u4EE5\\u4EE5\\u63D2\\u4EF6\\u7684\\u5F62\\u5F0F\\u5728 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"ESlint\"), \" \\u4E2D\\u5B58\\u5728\\uFF0C\\u4EE3\\u66FF \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"ESlint\"), \" \\u4E2D\\u7684\\u683C\\u5F0F\\u5316\\u7684\\u529F\\u80FD\\u3002\"), mdx(\"p\", null, \"\\u6240\\u4EE5 Prettier \\u662F\\u4E00\\u4E2A\\u53EA\\u8D1F\\u8D23\\u4EE3\\u7801\\u683C\\u5F0F\\u5316\\u7684\\u5DE5\\u5177\\uFF0C\\u8BED\\u6CD5\\u914D\\u7F6E\\u76F8\\u5173\\u7684\\u89C4\\u5219\\u4E0D\\u4F1A\\u6D89\\u53CA\\uFF0C\\u6240\\u4EE5\\u4E5F\\u53EF\\u4EE5\\u548C Airbnb \\u4E00\\u8D77\\u4F7F\\u7528\\u3002\"), mdx(\"p\", null, mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"ESLint\"), \" \\u7E41\\u591A\\u7684\\u89C4\\u5219\\uFF0C\\u521D\\u59CB\\u5316\\u7684\\u65F6\\u5019\\u4E5F\\u4F1A\\u63D0\\u793A \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"To check syntax, find problems, and enforce code style\"), \"\\uFF0C\\u6240\\u4EE5\\u529F\\u80FD\\u5206\\u4E3A \\u8BED\\u6CD5\\u68C0\\u67E5(a=;)\\u3001\\u95EE\\u9898\\u53D1\\u73B0(\\u4E0D\\u5141\\u8BB8\\u4F7F\\u7528 console\\uFF0C\\u4F46\\u662F\\u68C0\\u6D4B\\u5230\\u4E86 console) \\u548C \\u4EE3\\u7801\\u683C\\u5F0F\\u5316(\\u7A7A\\u683C\\u7F29\\u8FDB\\u6570) \\u4E09\\u4E2A\\u529F\\u80FD\\u3002\\u201C\\u4EE3\\u7801\\u683C\\u5F0F\\u5316\\u201D \\u5C31\\u662F \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Prettier\"), \" \\u8981\\u8986\\u76D6\\u548C\\u62D3\\u5C55\\u7684\\u3002\"), mdx(\"p\", null, \"\\u7981\\u7528prettier\\u51B2\\u7A81\\u7684\\u89C4\\u5219\\uFF1A\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"yarn add --dev eslint-config-prettier\\n\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-javascript\"\n  }, \"module.exports = {\\n  \\\"extends\\\": [\\\"prettier\\\"]\\n}\\n\")), mdx(\"p\", null, \"\\u7528 eslint \\u63A5\\u7BA1 prettier \\u7684\\u8FD0\\u884C\\uFF1A\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"yarn add --dev eslint-plugin-prettier\\n\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-javascript\"\n  }, \"module.exports = {\\n  \\\"extends\\\": [\\\"prettier\\\"],\\n  \\\"plugins\\\": [\\\"prettier\\\"],\\n}\\n\")), mdx(\"h2\", null, \"5. typescript\"), mdx(\"p\", null, mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"TypeScript\"), \" \\u548C \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"ECMAScript\"), \" \\u76F8\\u6BD4\\u53EF\\u4EE5\\u7B97\\u662F\\u4E0D\\u540C\\u7684\\u8BED\\u8A00\\u4E86\\uFF0C\\u89E3\\u6790\\u662F\\u4E0D\\u540C\\u7684\\uFF0C\\u521A\\u5F00\\u59CB \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Typescript\"), \" \\u4F7F\\u7528\\u81EA\\u5DF1\\u7684 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"tslint\"), \" \\u6765\\u5B9E\\u73B0\\u8FD9\\u4E2A\\u529F\\u80FD\\uFF0C\\u4F46\\u662F\\u968F\\u7740\\u53D1\\u5C55\\u548C\\u5B9A\\u5236\\u5316\\u8981\\u6C42\\u8D8A\\u6765\\u8D8A\\u9AD8\\uFF0C\\u76EE\\u524D\\u5B98\\u65B9\\u5DF2\\u7ECF\\u653E\\u5F03\\u4E86 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"tslint\"), \"\\uFF0C\\u8F6C\\u800C\\u5B9E\\u73B0\\u76F8\\u5173\\u7684 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"ESlint\"), \" \\u751F\\u6001\\uFF0C\\u8FD9\\u5176\\u5B9E\\u662F\\u66F4\\u597D\\u7684\\u9009\\u62E9\\u3002\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"yarn add --dev @typescript-eslint\\n\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-javascript\"\n  }, \"module.exports = {\\n    \\\"parser\\\": \\\"@typescript-eslint/parser\\\",\\n    \\\"plugins\\\": [\\n        \\\"@typescript-eslint\\\"\\n    ],\\n};\\n\")), mdx(\"h2\", null, \"6. \\u7F16\\u8F91\\u5668\\u63D2\\u4EF6\"), mdx(\"p\", null, \"\\u5982\\u679C\\u4F60\\u5728\\u9879\\u76EE\\u6839\\u76EE\\u5F55\\u4E0B\\u9762\\u521B\\u5EFA\\u4E86 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \".eslintrc\"), \"\\uFF0C\\u7136\\u540E\\u5B89\\u88C5 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"eslint\"), \" \\u7684\\u63D2\\u4EF6\\uFF0C\\u7F16\\u8F91\\u5668\\u4F1A\\u63D0\\u4F9B\\u8BED\\u6CD5\\u3001\\u9519\\u8BEF\\u548C\\u683C\\u5F0F\\u5316\\u7684\\u63D0\\u793A\\uFF0C\\u4ECE\\u8FD9\\u4E2A\\u7528\\u5904\\u6765\\u8BF4\\u4E5F\\u4E0D\\u7528\\u5B89\\u88C5\\u4F9D\\u8D56\\u4E86\\uFF1F\"), mdx(\"p\", null, \"\\u5B89\\u88C5\\u4F9D\\u8D56\\u4E0E\\u7F16\\u8F91\\u5668\\u63D2\\u4EF6\\u7684\\u533A\\u522B\\uFF1A\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u5B89\\u88C5\\u7F16\\u8F91\\u5668\\u63D2\\u4EF6\\uFF0C\\u80FD\\u6839\\u636E\\u9879\\u76EE\\u914D\\u7F6E\\u6587\\u4EF6\\uFF0C\\u5B9E\\u73B0\\u7F16\\u8F91\\u5668\\u5B9E\\u65F6\\u7684\\u4EE3\\u7801\\u68C0\\u67E5\\u3001\\u98CE\\u683C\\u683C\\u5F0F\\u5316\\u7B49\\u529F\\u80FD\\uFF0C\\u4F46\\u662F\\u53BB\\u9664\\u63D2\\u4EF6\\u6216\\u8005\\u66F4\\u6362\\u7F16\\u8F91\\u5668\\u8FD9\\u4E9B\\u529F\\u80FD\\u5C31\\u4E22\\u5931\\u4E86\\uFF0C\\u6BD5\\u7ADF\\u662F\\u63D2\\u4EF6\\u63D0\\u4F9B\\u7684\\u529F\\u80FD\\u3002\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u5B89\\u88C5\\u4F9D\\u8D56\\uFF0C\\u6839\\u636E npm \\u811A\\u672C\\u8BBE\\u7F6E\\uFF0C\\u53EF\\u4EE5\\u7528 githook \\u6216\\u8005\\u624B\\u52A8\\u8FD0\\u884C\\u7684\\u65B9\\u5F0F\\u5728\\u547D\\u4EE4\\u884C\\u8FD0\\u884C\\uFF0C\\u4E0D\\u4F9D\\u6258\\u4E8E\\u7F16\\u8F91\\u5668\\uFF0C\\u4F46\\u662F\\u5E76\\u4E0D\\u80FD\\u63D0\\u4F9B\\u7F16\\u8F91\\u5668\\u754C\\u9762\\u4E0A\\u7684\\u63D0\\u793A\\u3002\")), mdx(\"h2\", null, \"7. \\u914D\\u7F6E\"), mdx(\"p\", null, \"ESLint \\u914D\\u7F6E\\u6587\\u4EF6\\u751F\\u6548\\u4F18\\u5148\\u7EA7\\u4E3A \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \".eslintrc.js > .eslintrc.yaml > .eslintrc.yml > .eslintrc.json > .eslintrc > package.json\")), mdx(\"p\", null, \"\\u5177\\u4F53\\u7528\\u6CD5\\u4E0D\\u804A\\uFF0C\\u4E00\\u7BC7\\u5B98\\u65B9\\u6587\\u6863\\u5373\\u53EF\\u5B8C\\u6574\\u8BF4\\u660E\\u5168\\u90E8\\u7684\\u914D\\u7F6E\\uFF1A \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://eslint.org/docs/user-guide/configuring\"\n  }, \"Configuring ESLint\"), \"\\uFF0C\\u6216\\u8005 \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://cn.eslint.org/docs/user-guide/configuring\"\n  }, \"\\u4E2D\\u6587\\u7F51\\u7AD9\"), \" \\u3002\"), mdx(\"p\", null, \"\\u4E00\\u4E2A\\u5E38\\u89C1\\u7684\\u914D\\u7F6E\\u6587\\u4EF6\\u5982\\u4E0B\\uFF1A\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-json\"\n  }, \"{\\n  \\\"extends\\\": \\\"eslint:recommended\\\",\\n  \\\"parserOptions\\\": {\\n    \\\"ecmaVersion\\\": 6,\\n    \\\"sourceType\\\": \\\"module\\\",\\n    \\\"ecmaFeatures\\\": {\\n      \\\"jsx\\\": true\\n    }\\n  },\\n  \\\"env\\\": {\\n      \\\"browser\\\": true,\\n      \\\"node\\\": true\\n  },\\n  \\\"plugins\\\": [\\n    \\\"import\\\",\\n    \\\"node\\\",\\n    \\\"promise\\\",\\n    \\\"standard\\\"\\n  ],\\n  \\\"globals\\\": {\\n    \\\"document\\\": \\\"readonly\\\",\\n    \\\"navigator\\\": \\\"readonly\\\",\\n    \\\"window\\\": \\\"readonly\\\"\\n  },\\n  \\\"rules\\\": {\\n    \\\"semi\\\": 2\\n  },\\n}\\n\")));\n}\n;\nMDXContent.isMDXComponent = true;"},"next":{"fileAbsolutePath":"D:/ubug/storybook/content/blog/data-structure-algorithm/data-structure-algorithm.md","id":"f5188044-78fa-51c9-b732-80dc5f1219aa","parent":{"name":"data-structure-algorithm","sourceInstanceName":"blog"},"excerpt":"…","fields":{"title":"🔐 数据结构和算法 [ONGOING]","slug":"/blog/data-structure-algorithm","description":"数据结构对于一个程序员是一个基本功，出身计算机科学的肯定会接触过。算法也不用说，常见的算法思想对于业务和能力的提升是显而易见的，至少解决问题的能力建立在熟悉常见数据结构和常见算法的基础上。数据结构和算法是在 IT 行业想有精进的最基础的能力，日常业务、数据处理和算法都必须知道这些，必须好好打扎实这个基础。","date":"2019-10-29","redirects":null,"datetime":"2019-10-29 11:45:48","categories":["algorithm"],"series":null,"tags":["算法","整理","思考"],"status":"online"},"frontmatter":{"published":null,"tags":["算法","整理","思考"],"theme":null,"slug":"data-structure-algorithm","date":"2019-10-29 11:45:48"},"body":"const _excluded = [\"components\"];\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }\n/* @jsx mdx */\n\nconst ercha = ['oc1=>rect: 1\\n' + 'oc2=>rect: 2\\n' + 'oc3=>rect: 3\\n' + 'oc4=>rect: 4\\n' + 'oc5=>rect: 5\\n' + 'oc6=>rect: 6\\n' + 'oc7=>rect: 7\\n' + 'oc8=>rect: 8\\n' + 'oc9=>rect: 9\\n' + 'oce=>rect: \\n' + '\\n' + 'oc6->oc3+oc8\\n' + 'oc3->oc2+oc4\\n' + 'oc8->oc7+oc9\\n'].join('');\nconst _frontmatter = {\n  \"slug\": \"data-structure-algorithm\",\n  \"title\": \"🔐 数据结构和算法 [ONGOING]\",\n  \"date\": \"2019-10-29 11:45:48\",\n  \"author\": \"Ubug\",\n  \"description\": \"数据结构对于一个程序员是一个基本功，出身计算机科学的肯定会接触过。算法也不用说，常见的算法思想对于业务和能力的提升是显而易见的，至少解决问题的能力建立在熟悉常见数据结构和常见算法的基础上。数据结构和算法是在 IT 行业想有精进的最基础的能力，日常业务、数据处理和算法都必须知道这些，必须好好打扎实这个基础。\",\n  \"categories\": [\"algorithm\"],\n  \"tags\": [\"算法\", \"整理\", \"思考\"],\n  \"banner\": \"./banner.jpg\",\n  \"tips\": [\"我是要成为海贼王的男人！<br/>——我家主人\", \"将过去和羁绊全部丢弃，不要吝惜那为了梦想流下的泪水。<br/>——《海贼王》\"]\n};\nconst makeShortcode = name => function MDXDefaultShortcode(props) {\n  console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n  return mdx(\"div\", props);\n};\nconst OrgChart = makeShortcode(\"OrgChart\");\nconst layoutProps = {\n  ercha,\n  _frontmatter\n};\nconst MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  let {\n      components\n    } = _ref,\n    props = _objectWithoutProperties(_ref, _excluded);\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"hr\", null), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"\\u60F3\\u5206\\u4EAB\\u7684\\u662F\\u6570\\u636E\\u7ED3\\u6784\\u548C\\u7B97\\u6CD5\\u7684\\u975E\\u5E38\\u57FA\\u7840\\u7684\\u77E5\\u8BC6\\uFF0C\\u770B\\u4E86\\u5F88\\u591A\\u7684\\u6587\\u7AE0\\uFF0C\\u81EA\\u5DF1\\u6D88\\u5316\\u548C\\u7406\\u89E3\\u7684\\u4E1C\\u897F\\uFF0C\\u82B1\\u4E86\\u975E\\u5E38\\u591A\\u65F6\\u95F4\\u601D\\u8003\\u5176\\u4E2D\\u7684\\u7EC6\\u8282\\uFF0C\\u5171\\u52C9~~\")), mdx(\"hr\", null), mdx(\"h2\", null, \"\\u3007\\u3001\\u4E3A\\u4EC0\\u4E48\"), mdx(\"p\", null, \"\\u7F16\\u7A0B\\u7684\\u8FC7\\u7A0B\\u4E2D\\uFF0C\\u63A5\\u89E6\\u4E86\\u5F88\\u591A\\u7684\\u4E1A\\u52A1\\u548C\\u4E0A\\u5C42\\u5B9E\\u73B0\\uFF0C\\u4F46\\u662F\\u5F88\\u591A\\u65F6\\u5019\\u63A5\\u89E6\\u6BD4\\u8F83\\u5E95\\u5C42\\u3001\\u6BD4\\u8F83\\u901A\\u7528\\u7684\\u7B97\\u6CD5\\u548C\\u6570\\u636E\\u5904\\u7406\\u7684\\u65F6\\u5019\\uFF0C\\u5076\\u5C14\\u4F1A\\u4E00\\u5934\\u96FE\\u6C34\\uFF0C\\u60F3\\u5B66\\uFF0C\\u4F46\\u662F\\u4E00\\u76F4\\u6CA1\\u6709\\u4E86\\u89E3\\u5230\\u8DB3\\u591F\\u7684\\u610F\\u4E49\\u3002\\u867D\\u7136\\u6BCF\\u4E2A\\u95EE\\u9898\\u90FD\\u80FD\\u5F53\\u573A\\u641C\\u7D22\\uFF0C\\u4F46\\u662F\\u8FD9\\u4E2A\\u80FD\\u529B\\u7684\\u95EE\\u9898\\uFF0C\\u4E0D\\u80FD\\u7528\\u641C\\u7D22\\u5F15\\u64CE\\u6765\\u9876\\u66FF\\u3002\\u6240\\u4EE5\\u8BA1\\u5212\\u597D\\u597D\\u7684\\u63A5\\u89E6\\u4E00\\u4E0B\\u57FA\\u672C\\u7684\\u6570\\u636E\\u7ED3\\u6784\\u548C\\u7B97\\u6CD5\\u601D\\u60F3\\u7684\\u57FA\\u7840\\uFF0C\\u81F3\\u5C11\\u6BCF\\u4E00\\u79CD\\u6570\\u636E\\u7ED3\\u6784\\u7684\\u4E0D\\u540C\\u5B58\\u50A8\\u65B9\\u6CD5\\u53CA\\u6709\\u5173\\u7B97\\u6CD5\\u8FDB\\u884C\\u5206\\u6790\\u6BD4\\u8F83\\uFF0C\\u4E0D\\u6C42\\u7CBE\\u901A\\uFF0C\\u81F3\\u5C11\\u80FD\\u804A\\u3002\"), mdx(\"p\", null, \"\\u4E0B\\u5B9A\\u51B3\\u5FC3\\u6765\\u5B66\\u4E60\\u7684\\u80CC\\u666F\\u662F\\uFF0C\\u770B\\u4E86\\u4E00\\u4E9B\\u7B97\\u6CD5\\u601D\\u60F3\\u4E4B\\u540E\\uFF0C\\u53D1\\u73B0\\u89E3\\u51B3\\u95EE\\u9898\\u7684\\u601D\\u8DEF\\u4E0D\\u540C\\u4E86\\uFF0C\\u4E4B\\u524D\\u5185\\u5FC3\\u5F3A\\u8C03\\u65E0\\u8BBA\\u597D\\u574F\\u95EE\\u9898\\u603B\\u80FD\\u89E3\\u51B3\\uFF0C\\u73B0\\u5728\\u66F4\\u5F3A\\u8C03\\u600E\\u4E48\\u66F4\\u597D\\u7684\\u89E3\\u51B3\\u95EE\\u9898\\uFF0C\\u5C31\\u50CF\\u662F\\u6D77\\u8FB9\\u6361\\u4E86\\u4E00\\u8DEF\\u7684\\u77F3\\u5B50\\uFF0C\\u7A81\\u7136\\u53D1\\u73B0\\u8FD8\\u6709\\u8D1D\\u58F3\\u7684\\u611F\\u89C9\\u3002\\u6240\\u4EE5\\u5BF9\\u4E8E\\u6211\\u6765\\u8BF4\\uFF0C\\u6211\\u7684\\u80FD\\u529B\\u4F53\\u73B0\\u5728\\u6211\\u5DF2\\u7ECF\\u6709\\u80FD\\u7528\\u624B\\u8FB9\\u7684\\u4E1C\\u897F\\u5B9E\\u73B0\\u76EE\\u6807\\u7684\\u7ECF\\u9A8C\\uFF0C\\u5982\\u679C\\u60F3\\u8981\\u8FFD\\u6C42\\u66F4\\u9AD8\\u7684\\u76EE\\u6807\\uFF0C\\u6211\\u5C31\\u5FC5\\u987B\\u5B66\\u4F1A\\u600E\\u4E48\\u66F4\\u597D\\u7684\\u89E3\\u51B3\\u95EE\\u9898\\u7684\\u7ECF\\u9A8C\\uFF0C\\u8FD9\\u662F\\u540E\\u7EED\\u7684\\u7B2C\\u4E00\\u5757\\u57AB\\u811A\\u77F3\\uFF0C\\u7ED5\\u4E0D\\u8FC7\\u53BB\\u7684\\u3002\"), mdx(\"h2\", null, \"\\u4E00\\u3001\\u7B97\\u6CD5 (Algorithms)\"), mdx(\"h3\", null, \"1. \\u4EC0\\u4E48\\u662F\\u7B97\\u6CD5\"), mdx(\"p\", null, \"\\u7B97\\u6CD5\\uFF0C\\u6211\\u7684\\u7406\\u89E3\\u5C31\\u662F\\u600E\\u4E48\\u89E3\\u51B3\\u95EE\\u9898\\uFF0C\\u5728\\u7A0B\\u5E8F\\u4E0A\\u662F\\u6839\\u636E\\u95EE\\u9898\\u7ED9\\u5B9A\\u7684\\u8F93\\u5165\\uFF0C\\u90FD\\u80FD\\u7ED9\\u51FA\\u89E3\\u51B3\\u95EE\\u9898\\u7684\\u8F93\\u51FA\\u3002\\u5F53\\u7136\\u6709\\u5F88\\u4E25\\u683C\\u7684\\u5B9A\\u4E49\\uFF0C\\u4F46\\u662F\\u672C\\u8D28\\u4E0A\\u5C31\\u662F\\u63CF\\u8FF0\\u4E00\\u4E2A\\u6839\\u636E\\u8F93\\u5165\\uFF0C\\u7ED9\\u51FA\\u8F93\\u51FA\\u7684\\u8BA1\\u7B97\\u8FC7\\u7A0B\\u3002\"), mdx(\"p\", null, \"\\u5BF9\\u4E8E\\u7B97\\u6CD5\\u6BD4\\u8F83\\u91CD\\u8981\\u7684\\u5C5E\\u6027\\u6709\\u5F88\\u591A\\uFF0C\\u6BD4\\u5982\\u6B63\\u786E\\u6027\\u3001\\u5065\\u58EE\\u6027\\u3001\\u53EF\\u8BFB\\u6027\\u7B49\\u3002\\u4F46\\u662F\\u6211\\u4EEC\\u66F4\\u770B\\u91CD\\u7684\\u5C31\\u662F\\u82B1\\u9500\\uFF0C\\u80FD\\u591F\\u7528\\u591A\\u5927\\u7684\\u65F6\\u95F4\\u548C\\u7A7A\\u95F4\\u89E3\\u51B3\\u4E00\\u4E2A\\u95EE\\u9898\\u662F\\u8861\\u91CF\\u4E00\\u4E2A\\u7B97\\u6CD5\\u7684\\u597D\\u574F\\u3002\\u6BD5\\u7ADF\\u4E00\\u4E2A\\u8BA1\\u7B97\\u8FC7\\u7A0B\\uFF0C\\u4E00\\u4E2A\\u95EE\\u9898\\u7684\\u89E3\\u51B3\\uFF0C\\u751F\\u4EA7\\u529B\\u7684\\u8FFD\\u6C42\\u5C31\\u662F\\u6548\\u7387\\u7684\\u63D0\\u5347\\uFF0C\\u5BF9\\u4E8E\\u7B97\\u6CD5\\u5C31\\u662F\\u9AD8\\u6548\\u3002\"), mdx(\"h3\", null, \"2. \\u7B97\\u6CD5\\u7684\\u5EA6\\u91CF\"), mdx(\"p\", null, \"\\u65F6\\u95F4\\u590D\\u6742\\u5EA6\\u548C\\u7A7A\\u95F4\\u590D\\u6742\\u5EA6\\u7684\\u6982\\u5FF5\\uFF0C\\u63CF\\u8FF0\\u7684\\u662F\\u4E00\\u4E2A\\u7B97\\u6CD5\\u5728\\u65F6\\u95F4\\u6210\\u672C\\u548C\\u7A7A\\u95F4\\u6210\\u672C\\u7684\\u597D\\u574F\\uFF0C\\u8FD9\\u5C31\\u662F\\u7B97\\u6CD5\\u7684\\u5EA6\\u91CF\\u65B9\\u6CD5\\uFF0C\\u53EF\\u4EE5\\u6BD4\\u8F83\\u4E0D\\u540C\\u7B97\\u6CD5\\u7684\\u6548\\u7387\\u3002\"), mdx(\"h4\", null, \"2.1 \\u65F6\\u95F4\\u590D\\u6742\\u5EA6\"), mdx(\"p\", null, \"\\u5BF9\\u4E8E\\u8BA1\\u7B97\\u673A\\u800C\\u8A00\\uFF0C\\u8BA1\\u7B97\\u5BF9\\u4E8E CPU \\u6765\\u8BF4\\u5C31\\u9700\\u8981\\u82B1\\u8D39\\u65F6\\u95F4\\u5F97\\u51FA\\u7B54\\u6848\\uFF0C\\u8BA1\\u7B97\\u8D8A\\u591A\\uFF0C\\u6240\\u9700\\u8981\\u7684\\u65F6\\u95F4\\u8D8A\\u591A\\uFF0C\\u5B9E\\u9645\\u4E0A\\u7B97\\u6CD5\\u6240\\u7528\\u65F6\\u95F4\\u53EF\\u4EE5\\u8F6C\\u6362\\u4E3A\\u7B97\\u6CD5\\u6267\\u884C\\u7684\\u57FA\\u672C\\u64CD\\u4F5C\\u6B21\\u6570\\uFF0C\\u6240\\u4EE5\\u5F88\\u76F4\\u89C2\\u7684\\u5C31\\u662F\\u4E0D\\u540C\\u7684\\u7B97\\u6CD5\\u53EA\\u9700\\u8981\\u6570\\u4E00\\u4E0B\\u8BA1\\u7B97\\u8FC7\\u7A0B\\u4E2D\\u7684\\u8BA1\\u7B97\\u91CF\\u5373\\u53EF\\u8868\\u793A\\u51FA\\u65F6\\u95F4\\u590D\\u6742\\u5EA6\\uFF0C\\u800C\\u5B9E\\u9645\\u4E0A\\u786E\\u5B9E\\u662F\\u8FD9\\u6837\\u7684\\uFF0C\\u7B97\\u6CD5\\u4E2D\\u6D89\\u53CA\\u5230\\u591A\\u5C11\\u8BA1\\u7B97\\u91CF\\u5C31\\u662F\\u65F6\\u95F4\\u590D\\u6742\\u5EA6\\u3002\"), mdx(\"p\", null, \"\\u63CF\\u8FF0\\u4E00\\u4E2A\\u7B97\\u6CD5\\u7684\\u590D\\u6742\\u5EA6\\uFF0C\\u9700\\u8981\\u5148\\u5B9A\\u4E49\\u95EE\\u9898\\u7684\\u89C4\\u6A21 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"n\"), \"\\uFF0C\\u6240\\u7528\\u7684\\u65F6\\u95F4\\u590D\\u6742\\u5EA6\\u8BB0\\u4E3A \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"O\"), \"\\u3002\"), mdx(\"p\", null, \"\\u6BD4\\u5982 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"O(n)\"), \" \\u8868\\u793A\\u95EE\\u9898\\u89C4\\u6A21 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"n\"), \" \\u6BCF\\u589E\\u957F 1\\uFF0C\\u6240\\u7528\\u65F6\\u95F4\\u589E\\u957F 1\\u3002\\u5F88\\u6E05\\u695A\\u7684\\u8868\\u8FBE\\u51FA\\u968F\\u7740\\u95EE\\u9898\\u89C4\\u6A21\\u7684\\u589E\\u5927\\uFF0C\\u89E3\\u51B3\\u95EE\\u9898\\u7684\\u65F6\\u95F4\\u7684\\u589E\\u957F\\u7A0B\\u5EA6\\u3002\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-javascript\"\n  }, \"function calcSum(nums) {\\n  let sum = 0; // 1 \\u6B21\\u8D4B\\u503C => O(1)\\n  let i = 0; // 1 \\u6B21\\u8D4B\\u503C => O(1)\\n  // \\u5FAA\\u73AF => O(n)\\n  while(i < nums.length){ //\\u5224\\u65AD\\u7B97\\u4F5C\\u5FAA\\u73AF\\u4F53\\u5185\\u90E8 => O(1)\\n    sum = sum + nums[i]; // \\u6C42\\u548C\\u3001\\u8D4B\\u503C => O(2)\\n    i = i + 1; // \\u6C42\\u548C\\u3001\\u8D4B\\u503C => O(2)\\n  }\\n  return sum; // \\u51FD\\u6570\\u8FD4\\u56DE\\u4E0D\\u8003\\u8651\\n}\\n\")), mdx(\"p\", null, \"\\u4E0A\\u9762\\u7684\\u8BA1\\u7B97\\u6B21\\u6570\\u6309\\u7167\\u4E0B\\u9762\\u7684\\u7A0B\\u5E8F\\u6B65\\u6570\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u6CE8\\u91CA\\u3001\\u58F0\\u660E\\u8BED\\u53E5\\u3001\\u51FD\\u6570\\u8C03\\u7528\\u8BED\\u53E5\\u4E0D\\u8BA1\\u7B97\\u8FD0\\u7B97\\u8FC7\\u7A0B\\uFF1B\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u8868\\u8FBE\\u5F0F\\u3001\\u8D4B\\u503C\\u8BED\\u53E5\\u3001\\u51FD\\u6570\\u6267\\u884C\\u8BED\\u53E5\\u3001\\u8F6C\\u79FB\\u8BED\\u53E5\\u3001\\u52A8\\u6001\\u5B58\\u50A8\\u7BA1\\u7406\\u8BED\\u53E5\\u3001\\u7B80\\u5355\\u5224\\u65AD\\uFF08\\u7A0B\\u5E8F\\u8FD0\\u7B97\\u6B65\\u6570\\u8BB0\\u4E3A 1\\uFF09\\uFF1B\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u6C42\\u548C\\u89C4\\u5219\\uFF1A\\u8FDE\\u7EED\\u7684\\u987A\\u5E8F\\u8FD0\\u7B97\\uFF0C\\u603B\\u7684\\u8FD0\\u7B97\\u6B65\\u6570\\u4E3A\\u5206\\u5F00\\u6B65\\u6570\\u76F8\\u52A0\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u4E58\\u79EF\\u89C4\\u5219\\uFF1A\\u8FD0\\u7B97\\u4E2D\\u7684\\u8FD0\\u7B97\\uFF0C\\u603B\\u7684\\u8FD0\\u7B97\\u6B65\\u6570\\u4E3A\\u5206\\u5F00\\u8BA1\\u7B97\\u540E\\u76F8\\u4E58\")), mdx(\"p\", null, \"\\u53EF\\u4EE5\\u5F97\\u5230\\uFF1A \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"1 + 1 + n \\xD7 (1 + 2 + 2)\"), \" \\u5373 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"5n + 2\"), \" \\u7684\\u8FD0\\u7B97\\u91CF\\u3002\"), mdx(\"p\", null, \"(ps: \\u5728\\u5F88\\u591A\\u5176\\u4ED6\\u5730\\u65B9\\u53EF\\u80FD\\u4F1A\\u5FFD\\u7565\\u5FAA\\u73AF\\u6761\\u4EF6\\u5224\\u65AD\\uFF0C\\u6216\\u8005\\u5C06\\u6C42\\u548C\\u548C\\u8D4B\\u503C\\u4F5C\\u4E3A\\u4E00\\u6B21\\u8FD0\\u7B97\\uFF0C\\u4ECE\\u800C\\u5F97\\u51FA \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"3n + 2\"), \"\\u3001\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"2n + 2\"), \"\\u3001\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"n + 1\"), \" \\u7684\\u591A\\u79CD\\u8BF4\\u6CD5\\uFF0C\\u5176\\u5B9E\\u90FD\\u662F\\u6CA1\\u95EE\\u9898\\u7684\\u3002)\"), mdx(\"p\", null, \"\\u5728\\u63CF\\u8FF0\\u8FD9\\u4E2A\\u590D\\u6742\\u5EA6\\u7684\\u65F6\\u5019\\uFF0C\\u6210\\u672C\\u4E0A\\u66F4\\u5173\\u5FC3\\u8DB3\\u591F\\u5927\\u7684\\u89C4\\u6A21\\u95EE\\u9898\\uFF0C\\u66F4\\u504F\\u91CD\\u4E8E\\u4F53\\u73B0\\u51FA\\u589E\\u957F\\u8D8B\\u52BF\\u3002\\u6240\\u4EE5\\u5728\\u53EA\\u8003\\u8651\\u589E\\u957F\\u8D8B\\u52BF\\u7684\\u65F6\\u5019\\uFF0C\\u5E76\\u4E0D\\u4E00\\u5B9A\\u8981\\u51C6\\u786E\\uFF0C\\u80FD\\u591F\\u53CD\\u6620\\u5728 n \\u8D8B\\u5411\\u4E8E\\u5F88\\u5927\\u7684\\u65F6\\u5019\\uFF0C\\u80FD\\u591F\\u8868\\u793A\\u6570\\u91CF\\u7EA7\\u5373\\u53EF\\u3002\\u6240\\u4EE5\\u5C31\\u6709\\uFF1A\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u5E38\\u6570\\u7CFB\\u6570\\u53EF\\u4EE5\\u7565\\u53BB\\uFF1A\", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"O(n)\"), \" => \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"O(c \\xD7 n)\"), \" \\uFF0C\", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"c\"), \" \\u662F\\u5E38\\u6570\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u4F4E\\u6B21\\u9879\\u53EF\\u4EE5\\u7565\\u53BB\\uFF1A\", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"O(n^a + n^b)\"), \" => \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"O(n^b)\"), \" \\uFF0C\", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"0 < a < b\"))), mdx(\"p\", null, \"\\u5E38\\u6570\\u548C\\u7CFB\\u6570\\u5E76\\u4E0D\\u662F\\u5173\\u952E\\uFF0C\\u5F88\\u591A\\u65F6\\u5019\\u6709\\u4E9B\\u4F1A\\u88AB\\u5FFD\\u7565\\u4E0D\\u8BA1\\u7B97\\uFF0C\\u6240\\u4EE5\\u4E0A\\u9762\\u7684\\u7A0B\\u5E8F\\u7684\\u590D\\u6742\\u5EA6 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"O(5n + 2)\"), \" \\u53EF\\u4EE5\\u8BB0\\u4E3A \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"O(n)\"), \"\\u3002\"), mdx(\"p\", null, \"\\u4E0A\\u9762\\u5BF9\\u4E8E\\u8FD0\\u7B97\\u91CF\\u7684\\u4F30\\u8BA1\\u7684\\u601D\\u60F3\\uFF0C\\u7C7B\\u4F3C\\u4E8E\\u4E0B\\u9762\\u8FD9\\u4E2A\\u56FE\\uFF0C\\u60B2\\u89C2\\u7684\\u590D\\u6742\\u5EA6\\u8D8B\\u52BF\\u56FE\\u548C\\u5B9E\\u9645\\u7684\\u8FD0\\u7B97\\u91CF\\uFF0C\\u4E0D\\u51C6\\u786E\\uFF0C\\u800C\\u4E14\\u5F00\\u59CB\\u7684\\u9636\\u6BB5\\u4E0E\\u540E\\u7EED\\u76F8\\u53CD\\uFF0C\\u4F46\\u662F\\u4ECD\\u7136\\u865A\\u7EBF\\u90E8\\u5206\\u4F53\\u73B0\\u51FA\\u7B97\\u6CD5\\u65F6\\u95F4\\u968F\\u7740\\u89C4\\u6A21\\u7684\\u4E0A\\u5347\\u7684\\u6700\\u574F\\u8D8B\\u52BF\\uFF0C\\u8FD9\\u4E2A\\u8D8B\\u52BF\\u548C\\u91CF\\u7EA7\\u662F\\u6211\\u4EEC\\u9700\\u8981\\u7684\\u4E00\\u4E2A\\u590D\\u6742\\u5EA6\\u63CF\\u8FF0\\uFF1A\"), mdx(\"p\", null, mdx(\"figure\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-figure\",\n    \"style\": {}\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"559px\"\n    }\n  }, \"\\n      \", mdx(\"a\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-link\",\n    \"href\": \"/static/0778e7f95d8b5cfa9b5831ff3eba9670/bfb7e/on.png\",\n    \"style\": {\n      \"display\": \"block\"\n    },\n    \"target\": \"_blank\",\n    \"rel\": [\"noopener\"]\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"23.552123552123554%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAFCAYAAABFA8wzAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA2ElEQVQY03VQ7W4DIQy793+1PcGkTZrWbuoV7rijfAdwQ9D2r0hWHLCDlcVEQmsA1S4YvHegVggvtaEwodYFgQieCkIl2FygnId6WNjgwFIsJrET0zwuEjWccRjKNNIwRVyNw+YTLL+dgfCzRcH9cNDnY37IgZY9VnyrCBMzPA/5VA5f2uHK4iMUrEfGzWROULGaye9859hHnKWPMB3CZeAHG2824HePUxiaJM6lY7dFjK/OWI2s6A/cL28XjbNUXI6E99VD804VJ9u47omkjv4V9H9lvUt4AiuchKha/yKrAAAAAElFTkSuQmCC')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"img\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"alt\": \"时间花费曲线\",\n    \"title\": \"时间花费曲线\",\n    \"src\": \"/static/0778e7f95d8b5cfa9b5831ff3eba9670/bfb7e/on.png\",\n    \"srcSet\": [\"/static/0778e7f95d8b5cfa9b5831ff3eba9670/2c191/on.png 259w\", \"/static/0778e7f95d8b5cfa9b5831ff3eba9670/86b01/on.png 518w\", \"/static/0778e7f95d8b5cfa9b5831ff3eba9670/bfb7e/on.png 559w\"],\n    \"sizes\": \"(max-width: 559px) 100vw, 559px\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    },\n    \"loading\": \"lazy\"\n  }), \"\\n  \"), \"\\n    \"), \"\\n    \", mdx(\"figcaption\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-figcaption\"\n  }, \"\\u65F6\\u95F4\\u82B1\\u8D39\\u66F2\\u7EBF\"), \"\\n  \")), mdx(\"p\", null, \"\\u5E38\\u89C1\\u7684\\u590D\\u6742\\u5EA6\\u91CF\\u7EA7\\u6709(\\u65F6\\u95F4\\u590D\\u6742\\u5EA6\\u6309\\u6570\\u91CF\\u7EA7\\u9012\\u589E\\u6392\\u5217)\\uFF1A\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"name\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u82F1\\u6587\\u540D\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u4E2D\\u6587\\u540D\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u793A\\u4F8B\\u573A\\u666F\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"O(1)\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Constant Complexity\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5E38\\u6570\\u590D\\u6742\\u5EA6\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u4E0E\\u95EE\\u9898\\u89C4\\u6A21\\u65E0\\u5173\\uFF0C\\u5E38\\u6570\\u6B21\\u89E3\\u51B3\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"O(log n)\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Logarithmic Complexity\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5BF9\\u6570\\u590D\\u6742\\u5EA6\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u6BCF\\u6B21\\u5FAA\\u73AF\\u80FD\\u5C06\\u89C4\\u6A21\\u6298\\u534A\\u7684\\u4E8C\\u5206\\u6CD5\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"O(n)\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Linear Complexity\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u7EBF\\u6027\\u65F6\\u95F4\\u590D\\u6742\\u5EA6\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5355\\u6B21\\u9996\\u5C3E\\u904D\\u5386\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"O(nlog n)\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Linear Logarithmic Complexity\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u7EBF\\u6027\\u5BF9\\u6570\\u65F6\\u95F4\\u590D\\u6742\\u5EA6\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5355\\u6B21\\u904D\\u5386\\u518D\\u5D4C\\u5957\\u89C4\\u6A21\\u6298\\u534A\\u65B9\\u6CD5\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"O(n^2)\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"N square Complexity\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5E73\\u65B9\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u53CC\\u91CD\\u904D\\u5386\\u5D4C\\u5957\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"O(n^3)\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"N square Complexity\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u7ACB\\u65B9\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u4E09\\u91CD\\u904D\\u5386\\u5D4C\\u5957\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"O(2^n)\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Exponential Growth\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u6307\\u6570\\uFF08\\u51E0\\u4E4E\\u8BA4\\u4E3A\\u4E0D\\u53EF\\u89E3\\u51B3\\uFF09\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u96C6\\u5408\\u7684\\u5168\\u90E8\\u5B50\\u96C6\\u95EE\\u9898\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"O(n!)\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Factorial\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u9636\\u4E58\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u9012\\u5F52\\u5D4C\\u5957\\u7EBF\\u6027\\u590D\\u6742\\u5EA6\")))), mdx(\"p\", null, \"\\u8FD9\\u4E9B\\u590D\\u6742\\u5EA6\\u5BF9\\u5E94\\u7684\\u89C4\\u6A21\\u8D8B\\u52BF\\uFF1A\"), mdx(\"p\", null, mdx(\"figure\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-figure\",\n    \"style\": {}\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"640px\"\n    }\n  }, \"\\n      \", mdx(\"a\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-link\",\n    \"href\": \"/static/750be827f252613d6711d760b28640bd/d98de/times.png\",\n    \"style\": {\n      \"display\": \"block\"\n    },\n    \"target\": \"_blank\",\n    \"rel\": [\"noopener\"]\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"74.90347490347492%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAYAAADkmO9VAAAACXBIWXMAAA9hAAAPYQGoP6dpAAACGUlEQVQ4y3VTiW6rMBDM/39e9aooTQSBQCHBN4c5DPPWTiBplVoyXlv2MDs7u1uWBe/GPM/o+x7DMGAcx231Z9M0vX3jsXZrYOmiaVs0TRMeMsaw3+8RRRHSNEUcxyE+HA5h33UdrLXbdM4F0ADYEsiVc9zsgPRygRAisFjZv1s9gKMs/L22NoHQBjhNDkpJaMVxPB5RFMWW1l+SbGkScGs0STE8AWtiyNgNTV0hSRJciKVPYwX8a/rhxgmayaDxBug1E4yjFSYA+pRfH72uv89sbaErhmF8AHotPKBWCrU2IV0vuK/yb6Af+3uAJqfMSP9+ZWiMIf0U/Pqq11/stjuOCsIEDNdUVBPsFAB94PWq63pjtTJ4p1nAogxafgUjIryRMIo9GfqPB9VaPwAJ6A73mM8xzQ41LyGrBKZhpHmFpeGwRv2ssgfyhsbsHm2y0FlYMLiRXCDAywg8/kAvckzEqqskZtLekmUGAutffehL7jUUZL1snJHQ/ixKHIoTvpJPnLMjLtQ5WdPjUo+I5Ii0c/im/0dCQ3eWQF8AvT5CKkRZitPpH+KvD1yPnyjJ5KpkkKIhKxlITgUU5AbqjM62RELTVJjIKba7+3a3iu1Trm4l+cqA5QXK4oqeWjE5Jyjzb9RKUxyTvSQayiY9n6nlaigpQyOsnbV711puuVd7mkZkeYaKVWDktSzP6cftvUAvrel9vMb/ASSDjYIT5zdOAAAAAElFTkSuQmCC')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"img\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"alt\": \"复杂度趋势，小规模\",\n    \"title\": \"复杂度趋势，小规模\",\n    \"src\": \"/static/750be827f252613d6711d760b28640bd/d98de/times.png\",\n    \"srcSet\": [\"/static/750be827f252613d6711d760b28640bd/2c191/times.png 259w\", \"/static/750be827f252613d6711d760b28640bd/86b01/times.png 518w\", \"/static/750be827f252613d6711d760b28640bd/d98de/times.png 640w\"],\n    \"sizes\": \"(max-width: 640px) 100vw, 640px\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    },\n    \"loading\": \"lazy\"\n  }), \"\\n  \"), \"\\n    \"), \"\\n    \", mdx(\"figcaption\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-figcaption\"\n  }, \"\\u590D\\u6742\\u5EA6\\u8D8B\\u52BF\\uFF0C\\u5C0F\\u89C4\\u6A21\"), \"\\n  \")), mdx(\"p\", null, mdx(\"figure\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-figure\",\n    \"style\": {}\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"1035px\"\n    }\n  }, \"\\n      \", mdx(\"a\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-link\",\n    \"href\": \"/static/87aa08f3f7b92eacb1a2f4e773e7eadc/a9b27/times.jpg\",\n    \"style\": {\n      \"display\": \"block\"\n    },\n    \"target\": \"_blank\",\n    \"rel\": [\"noopener\"]\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"69.4980694980695%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAOABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAECAwX/xAAWAQEBAQAAAAAAAAAAAAAAAAACAwT/2gAMAwEAAhADEAAAAegnWe+hIR//xAAZEAACAwEAAAAAAAAAAAAAAAABAgAREiL/2gAIAQEAAQUCZ21poGNFeqgn/8QAFxEAAwEAAAAAAAAAAAAAAAAAAAERAv/aAAgBAwEBPwG5RUf/xAAYEQADAQEAAAAAAAAAAAAAAAAAAQIRMf/aAAgBAgEBPwG7zgnR/8QAGBAAAgMAAAAAAAAAAAAAAAAAARAAITH/2gAIAQEABj8CNrYX/8QAGxAAAgMAAwAAAAAAAAAAAAAAAAERITFRYYH/2gAIAQEAAT8hgGZEzGc8LatFLwR9H//aAAwDAQACAAMAAAAQ58//xAAZEQACAwEAAAAAAAAAAAAAAAAAAREhMXH/2gAIAQMBAT8QjKr4OfD/xAAYEQEBAAMAAAAAAAAAAAAAAAABABEhMf/aAAgBAgEBPxBFjqWbb//EABsQAQEAAgMBAAAAAAAAAAAAAAERACExQWFR/9oACAEBAAE/EHEUIACTGrH0JjNlHcxKtFwvuNQBtOcKOuX3P//Z')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"img\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"alt\": \"复杂度趋势，大规模\",\n    \"title\": \"复杂度趋势，大规模\",\n    \"src\": \"/static/87aa08f3f7b92eacb1a2f4e773e7eadc/dcf47/times.jpg\",\n    \"srcSet\": [\"/static/87aa08f3f7b92eacb1a2f4e773e7eadc/fca29/times.jpg 259w\", \"/static/87aa08f3f7b92eacb1a2f4e773e7eadc/f4507/times.jpg 518w\", \"/static/87aa08f3f7b92eacb1a2f4e773e7eadc/dcf47/times.jpg 1035w\", \"/static/87aa08f3f7b92eacb1a2f4e773e7eadc/a9b27/times.jpg 1200w\"],\n    \"sizes\": \"(max-width: 1035px) 100vw, 1035px\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    },\n    \"loading\": \"lazy\"\n  }), \"\\n  \"), \"\\n    \"), \"\\n    \", mdx(\"figcaption\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-figcaption\"\n  }, \"\\u590D\\u6742\\u5EA6\\u8D8B\\u52BF\\uFF0C\\u5927\\u89C4\\u6A21\"), \"\\n  \")), mdx(\"p\", null, \"\\u80FD\\u770B\\u5230\\u8FD9\\u4E2A\\u5DEE\\u8DDD\\u4E86\\uFF0C\\u4F46\\u662F\\u4E0D\\u662F\\u5F88\\u5F62\\u8C61\\u3002\\u5728\\u4E3E\\u4E00\\u4E2A\\u8FD9\\u79CD\\u5BF9\\u6BD4\\u5F88\\u660E\\u663E\\u7684\\u6781\\u7AEF\\u4F8B\\u5B50\\uFF1A\"), mdx(\"p\", null, \"\\u7EDF\\u8BA1\\u5168\\u56FD\\u4EBA\\u53E3\\u6570\\u636E\\u7684\\u6392\\u5E8F\\uFF0C\\u6570\\u636E\\u91CF\\u7EA7\\u5728 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"10^9\"), \"\\uFF0C\\u5982\\u679C\\u4F7F\\u7528\\u5192\\u6CE1\\u6392\\u5E8F\\u7684 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"O(n^2)\"), \" \\u590D\\u6742\\u5EA6\\u9700\\u8981 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"n^18\"), \" \\u6B21\\u8FD0\\u7B97\\uFF0C\\u5728\\u666E\\u901A\\u8BA1\\u7B97\\u673A\\u4E0A(\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"10^9 flops\"), \")\\u9700\\u8981\\u81F3\\u5C11 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"10^9 \\u79D2 = 30 \\u5E74\"), \" \\u624D\\u80FD\\u89E3\\u51B3\\uFF0C\\u800C\\u4F7F\\u7528\\u5F52\\u5E76\\u6392\\u5E8F \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"O(nlogn)\"), \" \\u53EA\\u9700\\u8981 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"30 \\xD7 10^9\"), \" \\u6B21\\u8FD0\\u7B97\\uFF0C\\u666E\\u901A\\u8BA1\\u7B97\\u673A\\u53EA\\u9700\\u8981 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"30\\u79D2\"), \" \\u5C31\\u80FD\\u89E3\\u51B3\\u3002\"), mdx(\"p\", null, \"\\u6240\\u4EE5\\u4E00\\u4E2A\\u597D\\u7684\\u7B97\\u6CD5\\u5728\\u4E1A\\u52A1\\u4E2D\\u5BF9\\u6027\\u80FD\\u7684\\u63D0\\u5347\\u65E0\\u7591\\u662F\\u5DE8\\u5927\\u7684\\uFF0C\\u4E86\\u89E3\\u4F7F\\u7528\\u7B97\\u6CD5\\u4E5F\\u662F\\u5F88\\u6709\\u5FC5\\u8981\\u3002\"), mdx(\"h5\", null, mdx(\"strong\", {\n    parentName: \"h5\"\n  }, \"\\u5E73\\u5747\\u590D\\u6742\\u5EA6\\u5206\\u6790\")), mdx(\"p\", null, \"\\u7B97\\u6CD5\\u7684\\u590D\\u6742\\u5EA6\\u6709\\u7684\\u7B97\\u6CD5\\u4EC5\\u4EC5\\u4E0E\\u8F93\\u5165\\u7684\\u89C4\\u6A21\\u6709\\u5173\\uFF0C\\u6BD4\\u5982\\u7ECF\\u5178\\u5192\\u6CE1\\u7684 O(n^2)\\uFF0C\\u65E0\\u8BBA\\u8F93\\u5165\\u7684\\u5E8F\\u5217\\u600E\\u6837\\uFF0C\\u987A\\u5E8F\\u548C\\u4E71\\u5E8F\\u5E8F\\u5217\\u7684\\u8FD0\\u7B97\\u91CF\\u662F\\u76F8\\u540C\\u7684\\u3002\\u4F46\\u662F\\u66F4\\u591A\\u65F6\\u5019\\u7684\\u7B97\\u6CD5\\u662F\\u8F93\\u5165\\u654F\\u611F\\u7684(InputSensitive)\\uFF0C\\u6BD4\\u5982\\u76F8\\u5BF9\\u667A\\u80FD\\u7684\\u7B97\\u6CD5\\u4F1A\\u5224\\u65AD\\uFF0C\\u5982\\u679C\\u5E8F\\u5217\\u5DF2\\u7ECF\\u6392\\u5E8F\\u5C31\\u5E94\\u8BE5\\u53BB\\u9664\\u4EA4\\u6362\\u3001\\u8D4B\\u503C\\u7B49\\u8017\\u65F6\\u64CD\\u4F5C\\u4E86\\uFF0C\\u8FD9\\u6837\\u6839\\u636E\\u8F93\\u5165\\u80FD\\u5F97\\u51FA\\u6700\\u597D\\u590D\\u6742\\u5EA6\\u548C\\u6700\\u574F\\u590D\\u6742\\u5EA6\\uFF0C\\u6BD4\\u5982\\u63D2\\u5165\\u6392\\u5E8F\\u7684 \\u6700\\u597D\\u590D\\u6742\\u5EA6 O(n)\\u548C\\u6700\\u574F\\u590D\\u6742\\u5EA6 O(n^2)\\uFF0C\\u867D\\u7136\\u603B\\u4F53\\u590D\\u6742\\u5EA6\\u8DDF\\u89C4\\u6A21\\u5173\\u7CFB\\u4F9D\\u7136\\u662F O(n^2)\\uFF0C\\u4F46\\u662F\\u6982\\u7387\\u4E0A\\u6765\\u8BF4\\u6BD4\\u7ECF\\u5178\\u5192\\u6CE1\\u8981\\u597D\\u5F88\\u591A\\u3002\"), mdx(\"p\", null, \"\\u6240\\u4EE5\\u590D\\u6742\\u5EA6\\u5206\\u5E03\\u6982\\u7387\\u4E5F\\u662F\\u4E00\\u4E2A\\u7B97\\u6CD5\\u7684\\u4F18\\u52A3\\u8003\\u91CF\\uFF0C\\u5F88\\u591A\\u65F6\\u5019\\u867D\\u7136\\u6700\\u597D\\u6700\\u574F\\u590D\\u6742\\u5EA6\\u65E0\\u6CD5\\u6539\\u53D8\\uFF0C\\u4F46\\u662F\\u590D\\u6742\\u5EA6\\u5728\\u8FD9\\u671F\\u95F4\\u7684\\u6982\\u7387\\u5206\\u5E03\\u5411\\u6700\\u597D\\u504F\\u79FB\\u4E5F\\u662F\\u5F88\\u597D\\u7684\\uFF0C\\u5E73\\u5747\\u590D\\u6742\\u5EA6\\u4E5F\\u4F1A\\u6839\\u636E\\u8FD9\\u4E2A\\u6982\\u7387\\u5206\\u5E03\\u76F8\\u5173\\u3002\\uFF08\\u6BD4\\u5982\\u5982\\u679C\\u80FD\\u4FDD\\u8BC1\\u8F93\\u5165\\u5E8F\\u5217\\u53EA\\u6709\\u4E00\\u5BF9\\u76F8\\u90BB\\u7684\\u6570\\u5B57\\u672A\\u6392\\u5E8F\\uFF0C\\u6982\\u7387\\u4E0A\\u6765\\u8BF4\\u5192\\u6CE1\\u6392\\u5E8F\\u4E5F\\u662F\\u53EF\\u63A5\\u53D7\\u7684\\uFF09\"), mdx(\"h5\", null, mdx(\"strong\", {\n    parentName: \"h5\"\n  }, \"\\u5E73\\u5747\\u590D\\u6742\\u5EA6\\u548C\\u5206\\u644A\\u590D\\u6742\\u5EA6\")), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u5E73\\u5747\\u590D\\u6742\\u5EA6\\u662F\\u5728\\u5047\\u8BBE\\u8F93\\u5165\\u5B9E\\u4F8B\\u662F\\u6309\\u7167\\u6982\\u7387\\u5206\\u5E03\\u7684\\uFF0C\\u6BD4\\u5982\\u5E73\\u5747\\u6216\\u8005\\u52A0\\u6743\\u65F6\\u95F4\\u590D\\u6742\\u5EA6\\uFF0C\\u63CF\\u8FF0\\u4E86\\u4EFB\\u610F\\u7ED9\\u5B9A\\u7684\\u8F93\\u5165\\u5B9E\\u4F8B\\u7684\\u4E8B\\u4EF6\\u7684\\u53EF\\u80FD\\u590D\\u6742\\u5EA6\\uFF0C\\u662F\\u72EC\\u7ACB\\u7684\\uFF0C\\u4E0D\\u5F3A\\u8C03\\u8F93\\u5165\\u7684\\u8FDE\\u7EED\\u548C\\u76F8\\u5173\\u6027\\u3002\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u5206\\u644A\\u65F6\\u95F4\\u590D\\u6742\\u5EA6\\u5F3A\\u8C03\\u7684\\u662F\\u8FDE\\u7EED\\u7684\\u8DB3\\u591F\\u591A\\u6B21\\u7684\\u8F93\\u5165\\u5B9E\\u4F8B\\u8FDB\\u884C\\u603B\\u4F53\\u5206\\u6790\\uFF0C\\u603B\\u6210\\u672C\\u5206\\u644A\\u5230\\u5355\\u6B21\\u7684\\u573A\\u666F\\uFF0C\\u66F4\\u5F3A\\u8C03\\u8FDE\\u7EED\\u591A\\u6B21\\u3002\")), mdx(\"p\", null, \"\\u5728\\u5E73\\u5747\\u590D\\u6742\\u5EA6\\u4E0D\\u597D\\u5206\\u6790\\u7684\\u65F6\\u5019\\uFF0C\\u6216\\u8005\\u4E00\\u4E2A\\u7B97\\u6CD5\\u5185\\u90E8\\u4E0D\\u786E\\u5B9A\\u8C03\\u7528\\u6761\\u4EF6\\u7684\\u65F6\\u5019\\u3002\\u53EF\\u4EE5\\u4ECE\\u5047\\u8BBE\\u7B97\\u6CD5\\u6574\\u4F53\\u88AB\\u5927\\u89C4\\u6A21\\u8C03\\u7528\\u6765\\u770B\\u5F85\\uFF0C\\u8FD9\\u4E2A\\u65F6\\u5019\\u8C03\\u7528\\u6761\\u4EF6\\u80FD\\u786E\\u5B9A\\uFF0C\\u4ECE\\u800C\\u53EF\\u4EE5\\u5F97\\u51FA\\u5728\\u4E0D\\u540C\\u7684\\u8C03\\u7528\\u65F6\\u4E0D\\u540C\\u7684\\u7B97\\u6CD5\\u590D\\u6742\\u5EA6\\uFF0C\\u7136\\u540E\\u5206\\u644A\\u7ED9\\u6BCF\\u4E00\\u6B21\\u8C03\\u7528\\uFF0C\\u5F97\\u5230\\u5206\\u644A\\u65F6\\u95F4\\u590D\\u6742\\u5EA6\\uFF0C\\u8FD9\\u6837\\u7684\\u65B9\\u6CD5\\u8FD8\\u662F\\u5F88\\u5E38\\u89C1\\u7684\\u3002\"), mdx(\"p\", null, \"\\u6BD4\\u5982\\uFF1A\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"\\u6570\\u7EC4\\u7684\\u6269\\u5BB9\\u64CD\\u4F5C\"), \"\\u3001\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"\\u6570\\u7EC4\\u7684\\u63D2\\u5165\\u64CD\\u4F5C\"), \"\\uFF0C\\u5728\\u5355\\u6B21\\u5206\\u6790\\u7684\\u65F6\\u5019\\u4E0D\\u592A\\u5BB9\\u6613\\u65AD\\u8A00\\u590D\\u6742\\u5EA6\\uFF0C\\u6216\\u8005\\u590D\\u6742\\u5EA6\\u4E0E\\u8F93\\u5165\\u6709\\u5173\\uFF0C\\u8FD9\\u4E2A\\u65F6\\u5019\\u8BA9\\u8F93\\u5165\\u7684\\u53D8\\u91CF\\u5728\\u5927\\u91CF\\u7684\\u8FDE\\u7EED\\u8C03\\u7528\\u7684\\u65F6\\u5019\\uFF0C\\u80FD\\u591F\\u5F97\\u5230\\u4E0D\\u540C\\u7684\\u590D\\u6742\\u5EA6\\uFF0C\\u5206\\u644A\\u540E\\u5C31\\u80FD\\u83B7\\u5F97\\u590D\\u6742\\u5EA6\\u7684\\u5206\\u6790\\u4E86\\u3002\"), mdx(\"h5\", null, mdx(\"strong\", {\n    parentName: \"h5\"\n  }, \"\\u771F\\u5B9E\\u590D\\u6742\\u5EA6\\u504F\\u597D\")), mdx(\"p\", null, \"\\u7531\\u4E8E\\u590D\\u6742\\u5EA6\\u662F\\u7C97\\u7565\\u7684\\u4F30\\u7B97\\uFF0C\\u6BCF\\u4E2A\\u8FD0\\u7B97\\u90FD\\u89C6\\u4E3A\\u56FA\\u5B9A\\u65F6\\u95F4\\uFF0C\\u4E0D\\u7136\\u6574\\u4E2A\\u4F30\\u7B97\\u4E5F\\u65E0\\u6CD5\\u6210\\u7ACB\\u3002\\u4F46\\u662F\\u5B9E\\u9645\\u4E0A\\u7A0B\\u5E8F\\u7684\\u4E00\\u6761\\u57FA\\u672C\\u64CD\\u4F5C\\u8BED\\u53E5\\uFF0C\\u6309\\u7167 cpu \\u65F6\\u95F4\\u975E\\u5E38\\u77ED\\uFF0C\\u4F46\\u4E5F\\u5E76\\u4E0D\\u603B\\u662F\\u76F8\\u540C\\uFF0C\\u4F8B\\u5982\\u6BD4\\u8F83\\u3001\\u4EE3\\u6570\\u8FD0\\u7B97\\u3001\\u4E8C\\u8FDB\\u5236\\u8FD0\\u7B97\\u3001\\u8D4B\\u503C\\u3001\\u521B\\u5EFA\\u5220\\u9664\\u53D8\\u91CF\\u7B49\\u6240\\u7528\\u65F6\\u95F4\\u5E76\\u4E0D\\u76F8\\u540C\\uFF0C\\u5176\\u4E2D\\u771F\\u5B9E\\u7684\\u521B\\u5EFA\\u5220\\u9664\\u53D8\\u91CF\\u548C\\u6BD4\\u8F83\\u64CD\\u4F5C\\u8981\\u5DEE 100 \\u500D\\u7684\\u65F6\\u95F4\\uFF0C\\u6240\\u4EE5\\u5728\\u67D0\\u4E9B\\u7B97\\u6CD5\\u91CC\\u9762\\uFF0C\\u5373\\u4F7F\\u590D\\u6742\\u5EA6\\u76F8\\u540C\\uFF0C\\u53EF\\u80FD\\u5728\\u7EC6\\u7C92\\u5EA6\\u7684\\u8FD0\\u7B97\\u4E0A\\u597D\\u4E00\\u4E9B\\uFF0C\\u5BFC\\u81F4\\u6574\\u4F53\\u7B97\\u6CD5\\u8FD8\\u662F\\u66F4\\u4F18\\u7684\\u3002\"), mdx(\"h5\", null, mdx(\"strong\", {\n    parentName: \"h5\"\n  }, \"\\u7B97\\u6CD5\\u7684\\u7A33\\u5B9A\\u6027\")), mdx(\"p\", null, \"\\u8FD9\\u4E2A\\u6982\\u5FF5\\u8DDF\\u5B57\\u9762\\u4E0D\\u592A\\u76F8\\u540C\\uFF0C\\u770B\\u5230\\u8FD9\\u4E2A\\u540D\\u5B57\\u611F\\u89C9\\u5E94\\u8BE5\\u662F\\u6700\\u597D\\u3001\\u6700\\u574F\\u590D\\u6742\\u5EA6\\u5DEE\\u4E0D\\u591A\\u8868\\u793A\\u7A33\\u5B9A\\u6027\\u597D\\uFF0C\\u5B9E\\u9645\\u4E0A\\u5E76\\u4E0D\\u662F\\u3002\\u8F93\\u5165\\u7684\\u76F8\\u7B49\\u5143\\u7D20\\uFF0C\\u6392\\u5E8F\\u540E\\u4F9D\\u7136\\u4FDD\\u6301\\u524D\\u540E\\u3002\\u76F8\\u7B49\\u6570\\u636E\\u7684\\u4EA4\\u6362\\u662F\\u7A33\\u5B9A\\u6027\\u7684\\u4F53\\u73B0\\uFF0C\\u4E5F\\u5C31\\u662F\\u6BCF\\u4E2A\\u5143\\u7D20\\u7684\\u79FB\\u52A8\\u90FD\\u662F\\u6709\\u8D8B\\u52BF\\u7684\\u3002\\u7A33\\u5B9A\\u6027\\u7684\\u597D\\u5904\\u662F\\u5BF9\\u4E8E\\u5927\\u89C4\\u6A21\\u7684\\u95EE\\u9898\\uFF0C\\u80FD\\u964D\\u4F4E\\u4E00\\u5B9A\\u7684\\u5F00\\u9500\\u3002\\uFF08\\u6BD4\\u5982\\u57FA\\u6570\\u6392\\u5E8F\\uFF09\"), mdx(\"h4\", null, \"2.2 \\u7A7A\\u95F4\\u590D\\u6742\\u5EA6\"), mdx(\"p\", null, \"\\u7A7A\\u95F4\\u590D\\u6742\\u5EA6\\u4E00\\u822C\\u5728\\u8BA8\\u8BBA\\u7B97\\u6CD5\\u7684\\u65F6\\u5019\\u76F8\\u6BD4\\u6CA1\\u90A3\\u4E48\\u91CD\\u8981\\uFF0C\\u4F46\\u4ECD\\u7136\\u662F\\u4E00\\u4E2A\\u91CD\\u8981\\u7684\\u5EA6\\u91CF\\u624B\\u6BB5\\uFF0C\\u8868\\u793A\\u4E00\\u4E2A\\u7B97\\u6CD5\\u6240\\u9700\\u8981\\u7684\\u5185\\u5B58\\u5728\\u89C4\\u6A21\\u4E0A\\u5347\\u65F6\\u5019\\u7684\\u8D8B\\u52BF\\u3002\"), mdx(\"p\", null, \"\\u4F46\\u5176\\u5B9E\\u7A7A\\u95F4\\u590D\\u6742\\u5EA6\\u6BD4\\u65F6\\u95F4\\u590D\\u6742\\u5EA6\\u7B80\\u5355\\u5F88\\u591A\\uFF0C\\u4E00\\u822C\\u7A0B\\u5E8F\\u4E2D\\u4E0D\\u4F1A\\u51FA\\u73B0\\u592A\\u591A\\u521B\\u5EFA\\u53D8\\u91CF\\u7684\\u60C5\\u51B5\\uFF0C\\u6240\\u4EE5\\u6BD4\\u8F83\\u5E38\\u89C1\\u7684\\u5C31\\u662F \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"O(1)\\u3001O(n)\\u3001O(n\\xB2)\"), \"\\uFF0C\\u5206\\u522B\\u4F8B\\u5B50\\u6BD4\\u5982\\u521D\\u59CB\\u5316\\uFF1A\\u4EC5\\u6709\\u56FA\\u5B9A\\u51E0\\u4E2A\\u53D8\\u91CF\\u3001\\u957F\\u5EA6\\u4E3A \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"n\"), \" \\u7684\\u6570\\u7EC4\\u3001\\u957F\\u5EA6\\u4E3A \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"n\\xD7n\"), \" \\u7684\\u4E8C\\u7EF4\\u6570\\u7EC4\\u3002\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"PS: \\u4E00\\u4E2A\\u53EF\\u80FD\\u6709\\u4E89\\u8BAE\\u7684\\u5730\\u65B9\\u5C31\\u5728\\u4E8E\\u4F20\\u5165\\u53C2\\u6570\\u662F\\u5426\\u7B97\\u4F5C\\u7A7A\\u95F4\\u590D\\u6742\\u5EA6\\uFF0C\\u4E00\\u822C\\u662F\\u4E0D\\u7B97\\u7684\\uFF0C\\u53EA\\u8BA1\\u7B97\\u7B97\\u6CD5\\u5185\\u90E8\\u521B\\u5EFA\\u7684\\u53D8\\u91CF\\u6570\\u3002\")), mdx(\"h3\", null, \"3. \\u6392\\u5E8F\\u7B97\\u6CD5\\u548C\\u641C\\u7D22\\u7B97\\u6CD5\"), mdx(\"p\", null, \"\\u6392\\u5E8F\\u548C\\u641C\\u7D22\\u662F\\u7B97\\u6CD5\\u548C\\u6570\\u636E\\u7ED3\\u6784\\u4E2D\\u5F88\\u5E38\\u89C1\\u7684\\u9700\\u6C42\\uFF0C\\u5E38\\u89C1\\u7684\\u6392\\u5E8F\\u7B97\\u6CD5\\u6709\\uFF1A\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u6392\\u5E8F\\u65B9\\u6CD5\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5E73\\u5747\\u65F6\\u95F4\\u590D\\u6742\\u5EA6\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u7A7A\\u95F4\\u590D\\u6742\\u5EA6\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u7A33\\u5B9A\\u6027\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u590D\\u6742\\u6027\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5192\\u6CE1\\u6392\\u5E8F\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(n2)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(1)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u7A33\\u5B9A\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u7B80\\u5355\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u76F4\\u63A5\\u63D2\\u5165\\u6392\\u5E8F\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(n2)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(1)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u7A33\\u5B9A\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u7B80\\u5355\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u76F4\\u63A5\\u9009\\u62E9\\u6392\\u5E8F\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(n2)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(1)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u4E0D\\u7A33\\u5B9A\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u7B80\\u5355\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5E0C\\u5C14\\u6392\\u5E8F\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(nlog2n)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(1)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u4E0D\\u7A33\\u5B9A\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u8F83\\u590D\\u6742\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5806\\u6392\\u5E8F\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(nlog2n)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(1)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u4E0D\\u7A33\\u5B9A\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u8F83\\u590D\\u6742\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5FEB\\u901F\\u6392\\u5E8F\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(nlog2n)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(nlog2n)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u4E0D\\u7A33\\u5B9A\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u8F83\\u590D\\u6742\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5F52\\u5E76\\u6392\\u5E8F\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(nlog2n)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(n)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u7A33\\u5B9A\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u8F83\\u590D\\u6742\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u57FA\\u6570\\u6392\\u5E8F\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(d(n+r))\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(n+r)O(n+r)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u7A33\\u5B9A\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u8F83\\u590D\\u6742\")))), mdx(\"p\", null, \"\\u5E38\\u89C1\\u7684\\u641C\\u7D22\\u7B97\\u6CD5\\u6709\\uFF1A\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u67E5\\u627E\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5E73\\u5747\\u65F6\\u95F4\\u590D\\u6742\\u5EA6\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u67E5\\u627E\\u6761\\u4EF6\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u987A\\u5E8F\\u67E5\\u627E\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(n)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u65E0\\u5E8F\\u6216\\u6709\\u5E8F\\u961F\\u5217\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u4E8C\\u5206\\u67E5\\u627E\\uFF08\\u6298\\u534A\\u67E5\\u627E\\uFF09\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(logn)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u6709\\u5E8F\\u6570\\u7EC4\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u4E8C\\u53C9\\u6392\\u5E8F\\u6811\\u67E5\\u627E\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(logn)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u4E8C\\u53C9\\u6392\\u5E8F\\u6811\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u54C8\\u5E0C\\u8868\\u6CD5\\uFF08\\u6563\\u5217\\u8868\\uFF09\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(1)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5148\\u521B\\u5EFA\\u54C8\\u5E0C\\u8868\\uFF08\\u6563\\u5217\\u8868\\uFF09\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5206\\u5757\\u67E5\\u627E\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"O(logn)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u65E0\\u5E8F\\u6216\\u6709\\u5E8F\\u961F\\u5217\")))), mdx(\"h2\", null, \"\\u4E8C\\u3001\\u6570\\u636E\\u7ED3\\u6784\"), mdx(\"p\", null, \"\\u7A0B\\u5E8F\\u8BBE\\u8BA1\\u5C31\\u662F\\u7B97\\u6CD5\\u52A0\\u4E0A\\u6570\\u636E\\u7ED3\\u6784\\u3002\\u7B97\\u6CD5\\uFF0C\\u4E5F\\u662F\\u4E00\\u4E2A\\u6570\\u636E\\u7ED3\\u6784\\u9AD8\\u6548\\u5B9E\\u73B0\\u7684\\u57FA\\u7840\\uFF0C\\u3002\"), mdx(\"p\", null, \"\\u8FD9\\u4E5F\\u662F\\u7B97\\u6CD5\\u548C\\u6570\\u636E\\u7ED3\\u6784\\u5BC6\\u4E0D\\u53EF\\u5206\\u7684\\u4E00\\u4E2A\\u539F\\u56E0\\uFF0C\\u6BD4\\u5982\\u67E5\\u627E (Searching) \\u548C\\u6392\\u5E8F (Sorting)\\u5728\\u6570\\u636E\\u7ED3\\u6784\\u4E2D\\u7684\\u5B9E\\u73B0\\u662F\\u5F88\\u5173\\u952E\\u7684\\u4E00\\u90E8\\u5206\\u3002\"), mdx(\"h3\", null, \"1. \\u4EC0\\u4E48\\u662F\\u6570\\u636E\\u7ED3\\u6784\"), mdx(\"h4\", null, \"1.1 \\u62BD\\u8C61\\u6570\\u636E\\u7C7B\\u578B\\u548C\\u6570\\u636E\\u7ED3\\u6784\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u6570\\u636E\\u7ED3\\u6784 (Data Structure) \\u63CF\\u8FF0\\u7684\\u662F\\u6570\\u636E\\u4E4B\\u95F4\\u7684\\u5173\\u7CFB\\uFF0C\\u5982\\u7EBF\\u6027\\u5173\\u7CFB\\uFF0C\\u56FE\\u72B6\\u5173\\u7CFB\\u7B49\\uFF1B\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u62BD\\u8C61\\u6570\\u636E\\u7C7B\\u578B (Abstract Data Type) \\u89C4\\u5B9A\\u4E86\\u4E00\\u4E2A\\u6570\\u5B66\\u6A21\\u578B\\u5373\\u5BF9\\u8FD9\\u4E2A\\u6A21\\u578B\\u7684\\u4E00\\u7CFB\\u5217\\u64CD\\u4F5C\\uFF0C\\u5982\\u6808\\u4EE5\\u53CA\\u5BF9\\u6808\\u7684push\\u53CApop\\u64CD\\u4F5C\\u3002\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u6570\\u636E\\u7C7B\\u578B(data type) = \\u63A5\\u53E3(interface) + \\u6570\\u636E\\u7684\\u8868\\u793A(data representation)\\n\\u6570\\u636E\\u8868\\u793A\\u6709\\u591A\\u79CD, \\u6570\\u636E\\u7ED3\\u6784(data structural representation)\\u7684\\u8868\\u793A\\u5F62\\u5F0F\\u662F\\u5176\\u4E2D\\u4E00\\u79CD.\")), mdx(\"p\", null, \"\\u6570\\u636E\\u7C7B\\u578B\\u5173\\u5FC3\\u7684\\u662F\\u600E\\u4E48\\u7528\\uFF0C\\u6BD4\\u5982 int\\u3001float\\u3001char\\uFF0C\\u8FD8\\u6BD4\\u5982\\u5E38\\u89C1\\u7684\\u6570\\u636E\\u7ED3\\u6784 List \\u4E5F\\u53EF\\u4EE5\\u79F0\\u4F5C\\u662F\\u4E00\\u4E2A\\u62BD\\u8C61\\u7684\\u6570\\u636E\\u7C7B\\u578B \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"List myList = new List();\"), \"\\uFF0C\\u8FD9\\u4E2A\\u65F6\\u5019\\u6211\\u4EEC\\u8BA8\\u8BBA\\u7684\\u90FD\\u662F\\u4ED6\\u4EEC\\u7684\\u63A5\\u53E3\\uFF0C\\u63A5\\u53E3\\u7684\\u8F93\\u5165\\u8F93\\u51FA\\uFF0C\\u600E\\u4E48\\u5B9E\\u73B0\\u7684\\u4E0D\\u53BB\\u8BA8\\u8BBA\\u3002\"), mdx(\"p\", null, \"\\u6570\\u636E\\u7ED3\\u6784\\u5173\\u5FC3\\u7684\\u662F\\u600E\\u4E48\\u5B9E\\u73B0\\uFF0C\\u6BD4\\u5982\\u6570\\u636E\\u7684\\u5173\\u7CFB\\u3001\\u5B9E\\u73B0\\u7684\\u7B97\\u6CD5\\u3001\\u8003\\u8651\\u600E\\u4E48\\u50A8\\u5B58\\u7B49\\uFF0C\\u6BD4\\u5982 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"List\"), \" \\u7684\\u6570\\u636E\\u7ED3\\u6784\\uFF0C\\u9700\\u8981\\u5B9E\\u73B0\\u7684\\u63A5\\u53E3\\u600E\\u4E48\\u53BB\\u9AD8\\u6548\\u5B9E\\u73B0\\uFF0C\\u8FD9\\u4E2A\\u65F6\\u5019\\u8BA8\\u8BBA\\u7684\\u90FD\\u662F\\u6570\\u636E\\u7684\\u5173\\u7CFB\\u3001\\u63A5\\u53E3\\u7684\\u5B9E\\u73B0\\u3001\\u7B97\\u6CD5\\u7684\\u6548\\u7387\\u7B49\\uFF0C\\u5F3A\\u8C03\\u7684\\u662F\\u57FA\\u4E8E\\u8BED\\u8A00\\uFF0C\\u5B9E\\u73B0\\u6570\\u636E\\u7C7B\\u578B\\u7684\\u4E00\\u6574\\u5957\\u4E1C\\u897F\\u3002\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"\\u6240\\u4EE5\\u804A\\u5230\\u6570\\u636E\\u7ED3\\u6784\\u7684\\u65F6\\u5019\\uFF0C\\u90A3\\u4E9B\\u6570\\u636E\\u7C7B\\u578B\\u548C\\u63A5\\u53E3\\u4F7F\\u7528\\u5C31\\u4E0D\\u80FD\\u8BF4\\u4E86\\u3002\\u5C31\\u50CF\\u662F\\u4E00\\u4E2A\\u5F00\\u8F66\\u7684\\uFF0C\\u4E0D\\u80FD\\u8DDF\\u9020\\u8F66\\u5DE5\\u7A0B\\u5E08\\u4E00\\u8D77\\u804A\\u6C7D\\u8F66\\uFF0C\\u867D\\u7136\\u8BF4\\u5F97\\u90FD\\u662F\\u4E00\\u4E2A\\u4E1C\\u897F\\uFF0C\\u4F46\\u662F\\u5173\\u6CE8\\u70B9\\u4E0D\\u540C\\u3002\")), mdx(\"h4\", null, \"1.2 \\u903B\\u8F91\\u7ED3\\u6784\\u548C\\u5B58\\u50A8\\u7ED3\\u6784\"), mdx(\"p\", null, \"\\u4E00\\u4E2A\\u6307\\u7684\\u662F\\u6570\\u636E\\u4E4B\\u95F4\\u7684\\u5173\\u7CFB\\uFF0C\\u800C\\u53E6\\u4E00\\u4E2A\\u6307\\u8FD9\\u79CD\\u5173\\u7CFB\\u5728\\u8BA1\\u7B97\\u673A\\u4E2D\\u7684\\u8868\\u73B0\\u5F62\\u5F0F\\u3002\"), mdx(\"p\", null, \"\\u903B\\u8F91\\u7ED3\\u6784\\u5C31\\u662F\\u6570\\u636E\\u4E4B\\u95F4\\u7684\\u5173\\u7CFB\\u3002\\u800C\\u6309\\u6570\\u636E\\u4E4B\\u95F4\\u7684\\u5173\\u7CFB\\u6765\\u8BF4\\uFF0C\\u903B\\u8F91\\u7ED3\\u6784\\u5927\\u6982\\u53EF\\u4EE5\\u5206\\u4E3A\\u4E24\\u79CD\\uFF1A\\u7EBF\\u6027\\u7ED3\\u6784\\u548C\\u975E\\u7EBF\\u6027\\u7ED3\\u6784\\uFF08\\u96C6\\u5408\\u3001\\u6811\\u3001\\u7F51\\uFF09\\u3002\"), mdx(\"p\", null, \"\\u5B58\\u50A8\\u7ED3\\u6784\\u662F\\u903B\\u8F91\\u7ED3\\u6784\\u7684\\u5B58\\u50A8\\u6620\\u50CF\\u3002\\u901A\\u4FD7\\u7684\\u8BB2\\uFF0C\\u53EF\\u4EE5\\u5C06\\u5B58\\u50A8\\u7ED3\\u6784\\u7406\\u89E3\\u4E3A\\u903B\\u8F91\\u7ED3\\u6784\\u7528\\u8BA1\\u7B97\\u673A\\u8BED\\u8A00\\u7684\\u5B9E\\u73B0\\u3002\\u5E38\\u89C1\\u7684\\u5B58\\u50A8\\u7ED3\\u6784\\u6709\\u987A\\u5E8F\\u5B58\\u50A8\\u3001\\u94FE\\u5F0F\\u5B58\\u50A8\\u3001\\u7D22\\u5F15\\u5B58\\u50A8\\u4EE5\\u53CA\\u6563\\u5217\\u5B58\\u50A8\\uFF08\\u54C8\\u5E0C\\u8868\\uFF09\\u3002\"), mdx(\"p\", null, \"\\u7279\\u522B\\u7684\\uFF1A\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u987A\\u5E8F\\u5B58\\u50A8\\u7ED3\\u6784\\uFF1A\\u903B\\u8F91\\u4E0A\\u76F8\\u90BB\\u7684\\u8282\\u70B9\\u5B58\\u50A8\\u5728\\u7269\\u7406\\u4F4D\\u7F6E\\u4E0A\\u76F8\\u90BB\\u7684\\u5B58\\u50A8\\u5355\\u5143\\u4E2D\\u3002\", mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"\\u4F18\\u70B9\\uFF1A\\u8282\\u7701\\u7A7A\\u95F4\\uFF0C\\u53EF\\u4EE5\\u5B9E\\u73B0\\u968F\\u673A\\u5B58\\u53D6\\uFF1B\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"\\u7F3A\\u70B9\\uFF1A\\u63D2\\u5165\\u3001\\u5220\\u9664\\u65F6\\u9700\\u8981\\u79FB\\u52A8\\u5143\\u7D20\\uFF0C\\u6548\\u7387\\u4F4E\\u3002\"))), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u94FE\\u5F0F\\u5B58\\u50A8\\u7ED3\\u6784\\uFF1A\\u4E00\\u7EC4\\u5185\\u5B58\\u5730\\u5740\\u4E0D\\u5FC5\\u8FDE\\u7EED\\u7684\\u50A8\\u5B58\\u5355\\u5143\\uFF0C\\u6BCF\\u4E2A\\u8282\\u70B9\\u5305\\u542B\\u5176\\u4ED6\\u8282\\u70B9\\u7684\\u903B\\u8F91\\u5F15\\u7528\\u3002\", mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"\\u4F18\\u70B9\\uFF1A\\u63D2\\u5165\\u3001\\u5220\\u9664\\u7075\\u6D3B\\uFF1B\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"\\u7F3A\\u70B9\\uFF1A\\u4E0D\\u80FD\\u968F\\u673A\\u5B58\\u53D6\\uFF0C\\u67E5\\u627E\\u901F\\u5EA6\\u6162\\u3002\")))), mdx(\"p\", null, \"\\u6BD4\\u5982\\uFF1A\\u6808\\u5728\\u903B\\u8F91\\u7ED3\\u6784\\u4E2D\\u53EA\\u80FD\\u5C5E\\u4E8E\\u7EBF\\u6027\\u7ED3\\u6784\\uFF0C\\u800C\\u5728\\u7269\\u7406\\u7ED3\\u6784\\u4E2D\\u5B83\\u53EF\\u4EE5\\u4F7F\\u7528\\u987A\\u5E8F\\u5B58\\u50A8\\uFF08\\u6570\\u7EC4\\uFF09\\uFF0C\\u4E5F\\u53EF\\u4EE5\\u4F7F\\u7528\\u94FE\\u5F0F\\u5B58\\u50A8\\uFF08\\u94FE\\u8868\\uFF09\\u3002\"), mdx(\"p\", null, \"\\u4E0B\\u9762\\u6211\\u4EEC\\u867D\\u7136\\u4F1A\\u6D89\\u53CA\\u4E00\\u70B9\\u5B58\\u50A8\\u7ED3\\u6784\\uFF0C\\u4F46\\u662F\\u5927\\u90E8\\u5206\\u8BA8\\u8BBA\\u7684\\u57FA\\u672C\\u4E0A\\u662F\\u5728\\u903B\\u8F91\\u5C42\\uFF0C\\u5373\\u7EBF\\u6027\\u548C\\u975E\\u7EBF\\u6027\\u7684\\u6570\\u636E\\u7ED3\\u6784\\u4E0A\\u8FDB\\u884C\\u4E00\\u4E9B\\u7B97\\u6CD5\\u7684\\u5B9E\\u73B0\\uFF1A\"), mdx(\"p\", null, mdx(\"figure\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-figure\",\n    \"style\": {}\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"1000px\"\n    }\n  }, \"\\n      \", mdx(\"a\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-link\",\n    \"href\": \"/static/1af86bee3c363f6e0d25e78a90be675e/e2c71/linear-vs-non-linear-data-structure.jpg\",\n    \"style\": {\n      \"display\": \"block\"\n    },\n    \"target\": \"_blank\",\n    \"rel\": [\"noopener\"]\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"59.84555984555985%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAMABQDASIAAhEBAxEB/8QAGAAAAgMAAAAAAAAAAAAAAAAAAAIBAwX/xAAVAQEBAAAAAAAAAAAAAAAAAAAAAf/aAAwDAQACEAMQAAAB1HtEgcj/xAAbEAACAgMBAAAAAAAAAAAAAAABAgMxABETQv/aAAgBAQABBQJ2k6yNrEYsPRoV/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFREBAQAAAAAAAAAAAAAAAAAAARD/2gAIAQIBAT8BZ//EABoQAQABBQAAAAAAAAAAAAAAAAFxABIgISL/2gAIAQEABj8CAOYq3c4//8QAGRABAAMBAQAAAAAAAAAAAAAAAQARMSFR/9oACAEBAAE/IQus2wqBS9BkuKV2iOOtTyUg42f/2gAMAwEAAgADAAAAEIA//8QAFxEAAwEAAAAAAAAAAAAAAAAAAAERUf/aAAgBAwEBPxCPRH//xAAWEQEBAQAAAAAAAAAAAAAAAAABABH/2gAIAQIBAT8QWmEX/8QAGhABAQADAQEAAAAAAAAAAAAAAREAITFBUf/aAAgBAQABPxBGRMVHd7xweppTdTSOIygexqHrQmBkF8XCgUL450FM6uf/2Q==')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"img\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"alt\": \"线性和非线性结构\",\n    \"title\": \"线性和非线性结构\",\n    \"src\": \"/static/1af86bee3c363f6e0d25e78a90be675e/e2c71/linear-vs-non-linear-data-structure.jpg\",\n    \"srcSet\": [\"/static/1af86bee3c363f6e0d25e78a90be675e/fca29/linear-vs-non-linear-data-structure.jpg 259w\", \"/static/1af86bee3c363f6e0d25e78a90be675e/f4507/linear-vs-non-linear-data-structure.jpg 518w\", \"/static/1af86bee3c363f6e0d25e78a90be675e/e2c71/linear-vs-non-linear-data-structure.jpg 1000w\"],\n    \"sizes\": \"(max-width: 1000px) 100vw, 1000px\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    },\n    \"loading\": \"lazy\"\n  }), \"\\n  \"), \"\\n    \"), \"\\n    \", mdx(\"figcaption\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-figcaption\"\n  }, \"\\u7EBF\\u6027\\u548C\\u975E\\u7EBF\\u6027\\u7ED3\\u6784\"), \"\\n  \")), mdx(\"h3\", null, \"2. \\u7EBF\\u6027\\u5E8F\\u5217 (Sequence)\\uFF1A\"), mdx(\"p\", null, \"\\u4E00\\u79CD\\u7EBF\\u6027\\u7684\\u6570\\u636E\\u7ED3\\u6784\\uFF0C\\u5143\\u7D20\\u5173\\u7CFB\\u53EF\\u4EE5\\u7528\\u4E00\\u4E2A\\u63A5\\u4E00\\u4E2A\\u7684\\u8868\\u8FF0\\uFF0C\\u4ECE\\u903B\\u8F91\\u548C\\u7269\\u7406\\u4E0A\\u7684\\u5DEE\\u5F02\\u53EF\\u4EE5\\u5206\\u4E3A\\uFF1A\\u5411\\u91CF\\u3001\\u5217\\u8868\\uFF0C\\u4E24\\u79CD\\u50A8\\u5B58\\u7ED3\\u6784\\uFF08\\u6709\\u65F6\\u5019\\u4E5F\\u4F1A\\u79F0\\u4E3A\\u987A\\u5E8F\\u8868\\u548C\\u94FE\\u8868\\uFF09\\uFF1A\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u5411\\u91CF (Vector)\\uFF0C\\u662F\\u6570\\u7EC4\\u7684\\u62BD\\u8C61\\u548C\\u6CDB\\u5316\\uFF08\\u4E5F\\u79F0\\u4E3A\\u987A\\u5E8F\\u8868)\\uFF0C\\u4F7F\\u7528\\u987A\\u5E8F\\u5B58\\u50A8\\u7ED3\\u6784\\u3002\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u5217\\u8868 (List)\\uFF0C\\u662F\\u94FE\\u8868\\u7684\\u62BD\\u8C61\\u548C\\u6CDB\\u5316\\uFF0C\\u4F7F\\u7528\\u94FE\\u5F0F\\u5B58\\u50A8\\u7ED3\\u6784\\u3002\")), mdx(\"p\", null, \"\\u6309\\u7167\\u4E0A\\u9762\\u4E24\\u79CD\\u50A8\\u5B58\\u7ED3\\u6784\\uFF0C\\u6709\\u4E0D\\u540C\\u7684\\u903B\\u8F91\\u5B9E\\u73B0\\uFF0C\\u6216\\u8005\\u79F0\\u4E3A\\u5E94\\u7528\\u5B9E\\u4F8B\\uFF0C\\u53EF\\u4EE5\\u5206\\u4E3A\\u4E0B\\u9762\\u51E0\\u79CD\\u4E0D\\u540C\\u7684\\u7EBF\\u6027\\u6570\\u636E\\u7ED3\\u6784\\uFF1A\"), mdx(\"h4\", null, \"2.1 \\u6570\\u7EC4\\uFF08Array\\uFF09\"), mdx(\"p\", null, \"\\u4E00\\u79CD\\u5178\\u578B\\u7684\\u5411\\u91CF\\uFF08\\u987A\\u5E8F\\u8868\\uFF09\\uFF0C\\u7279\\u5F81\\u662F\\u4F7F\\u7528\\u4E0B\\u6807\\u8BBF\\u95EE\\uFF0C\\u6570\\u636E\\u987A\\u5E8F\\u6392\\u5217\\u3002\\u4E00\\u822C\\u8BED\\u8A00\\u4E2D\\u90FD\\u4F1A\\u6709\\u6570\\u7EC4\\u7684\\u57FA\\u672C\\u6570\\u636E\\u7C7B\\u578B\\u7684\\u4E00\\u4E2A\\u6570\\u636E\\u7ED3\\u6784\\uFF0C\\u56E0\\u4E3A\\u81EA\\u5E26\\u7D22\\u5F15\\uFF0C\\u4E0E\\u5185\\u5B58\\u5730\\u5740\\u5BF9\\u5E94\\uFF0C\\u6240\\u4EE5\\u5BFB\\u5740\\u8BFB\\u53D6\\u6570\\u636E\\u6BD4\\u8F83\\u5BB9\\u6613\\uFF0C\\u67E5\\u627E\\u6548\\u7387\\u5F88\\u9AD8\\u3002\\u4E0D\\u8FC7\\u4F20\\u7EDF\\u610F\\u4E49\\u4E0A\\u7684\\u6570\\u7EC4\\u4E0D\\u50CF\\u662F \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"JS\"), \" \\u4E2D\\u7684 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Array\"), \" \\u90A3\\u4E48\\u7075\\u6D3B\\uFF0C\\u6BD4\\u5982\\u56FA\\u5B9A\\u957F\\u5EA6\\u3001\\u7269\\u7406\\u5B58\\u50A8\\u7ED3\\u6784\\u76F8\\u90BB\\uFF0C\\u6570\\u636E\\u7C7B\\u578B\\u7B80\\u5355\\u7B49\\u3002\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u64CD\\u4F5C\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u529F\\u80FD\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u9002\\u7528\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"size()\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u8FD4\\u56DE\\u6570\\u7EC4\\u7684\\u957F\\u5EA6\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"get(r)\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u8FD4\\u56DE\\u5BF9\\u5E94\\u4E0B\\u6807\\u7684\\u5143\\u7D20\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"put(r, e)\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5BF9\\u5BF9\\u5E94\\u4E0B\\u6807\\u7684\\u5143\\u7D20\\u8D4B\\u503C\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"insert(r, e)\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5728\\u5BF9\\u5E94\\u4E0B\\u6807\\u7684\\u4F4D\\u7F6E\\u63D2\\u5165\\u6570\\u636E\\uFF0C\\u540E\\u9762\\u4F9D\\u6B21\\u540E\\u79FB\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"remove(r)\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5220\\u9664\\u5BF9\\u5E94\\u4E0B\\u6807\\u7684\\u5143\\u7D20\\uFF0C\\u540E\\u9762\\u4F9D\\u6B21\\u524D\\u79FB\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"disordered()\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u5224\\u65AD\\u662F\\u5426\\u975E\\u964D\\u5E8F\\u6392\\u5217\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"sort()\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u975E\\u964D\\u5E8F\\u6392\\u5217\\u5168\\u90E8\\u5143\\u7D20\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"find(e)\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u67E5\\u627E\\u76EE\\u6807\\u5143\\u7D20\\u7684\\u4F4D\\u7F6E\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"search(e)\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u67E5\\u627E\\u4E0D\\u5927\\u4E8E\\u76EE\\u6807\\u5143\\u7D20\\u7684\\u6700\\u5927\\u4E0B\\u6807\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u6709\\u5E8F\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"deduplicate()\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u53BB\\u9664\\u91CD\\u590D\\u5143\\u7D20\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"uniquify()\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u53BB\\u9664\\u91CD\\u590D\\u5143\\u7D20\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u6709\\u5E8F\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"traverse()\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u904D\\u5386\\u5E76\\u5904\\u7406\\u5168\\u90E8\\u5143\\u7D20\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")))), mdx(\"p\", null, \"ps: js \\u52A8\\u6001\\u8BED\\u8A00\\u548C\\u4F20\\u7EDF\\u7684\\u6570\\u7EC4\\u4E0D\\u540C\\uFF0C\\u800C\\u4E14\\u5F88\\u591A\\u5185\\u7F6E\\u65B9\\u6CD5\\uFF0C\\u8FD9\\u91CC\\u4EC5\\u6F14\\u793A\\u7528\\u57FA\\u672C\\u64CD\\u4F5C\\u5B9E\\u73B0\\u76F8\\u5173\\u63A5\\u53E3\\u5E76\\u5206\\u6790\\u590D\\u6742\\u5EA6\\uFF1A\"), mdx(\"h5\", null, \"2.1.1 \\u4EE3\\u7801\\u5B9E\\u73B0\"), mdx(RunTSX, {\n    codeStr: vectorStr,\n    mdxType: \"RunTSX\"\n  }), mdx(\"h5\", null, \"2.1.2 \\u52A8\\u6001\\u6570\\u7EC4\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"\\u52A8\\u6001\\u6570\\u7EC4\"), \" \\u6570\\u7EC4\\u7684\\u64CD\\u4F5C\\u4E00\\u822C\\u6839\\u636E\\u9700\\u6C42\\u6709\\u589E\\u5220\\u6539\\u67E5\\u7B49\\u76EE\\u7684\\u7684\\u64CD\\u4F5C\\uFF0C\\u4F46\\u662F\\u4F20\\u7EDF\\u610F\\u4E49\\u4E0A\\u7684\\u6570\\u7EC4\\u7684\\u957F\\u5EA6\\u4E0D\\u53EF\\u53D8\\uFF0C\\u6240\\u4EE5\\u6D89\\u53CA\\u5230\\u52A8\\u6001\\u6570\\u7EC4\\u7684\\u6982\\u5FF5\\uFF0C\\u4E5F\\u5C31\\u662F\\u5728\\u64CD\\u4F5C\\u7684\\u8FC7\\u7A0B\\u4E2D\\uFF0C\\u5BF9\\u6570\\u7EC4\\u7684\\u5927\\u5C0F\\u8FDB\\u884C\\u5904\\u7406\\uFF0C\\u5982\\u679C\\u957F\\u5EA6\\u4E0D\\u591F\\u7528\\u4E86\\uFF0C\\u9700\\u8981\\u6269\\u5F20\\uFF0C\\u957F\\u5EA6\\u592A\\u957F\\u5219\\u8981\\u7F29\\u51CF\\u3002\\u8FD9\\u4E5F\\u5C31\\u662F\\u5C01\\u88C5\\u7684\\u52A8\\u6001\\u6570\\u7EC4\\u7684\\u6982\\u5FF5\\u3002\"), mdx(\"p\", null, \"\\u4F8B\\u5982\\u7ECF\\u5E38\\u5728\\u8C03\\u8BD5\\u3001\\u65E5\\u5FD7\\u91CC\\u9762\\u770B\\u5230 capacity \\u8FD9\\u4E2A\\u8BCD\\uFF0C\\u7ECF\\u5E38\\u8868\\u793A\\u7533\\u8BF7\\u7684\\u5185\\u5B58\\u5927\\u5C0F\\uFF0C\\u8FD9\\u5C31\\u662F\\u52A8\\u6001\\u6570\\u7EC4\\u7684\\u573A\\u666F\\uFF0C\\u4E0B\\u9762\\u8FD9\\u4E2A\\u5C31\\u662F Android \\u8C03\\u8BD5\\u7684\\u65F6\\u5019\\u4EE3\\u7801\\u7F13\\u5B58\\u7684\\u5904\\u7406\\uFF1A\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-log\"\n  }, \"I/zygote64(21065): Do partial code cache collection, code=122KB, data=83KB\\nI/zygote64(21065): After code cache collection, code=122KB, data=83KB\\nI/zygote64(21065): Increasing code cache capacity to 512KB\\n\")), mdx(\"p\", null, \"expand \\u65B9\\u6CD5\\u7684 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"\\u5206\\u644A\\u590D\\u6742\\u5EA6\\u5206\\u6790\"), \"\\uFF1A\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\"\n  }, \"\\u6269\\u5BB9\\u7684\\u91CF\\u7EA7\\u5E94\\u8BE5\\u662F\\u3010\\u5E38\\u6570\\u3011\\uFF0C\\u8FD8\\u662F\\u3010\\u500D\\u6570\\u3011\\uFF1F\\n\\u5047\\u8BBE\\u4ECE\\u96F6\\u5F00\\u59CB\\u5411\\u6570\\u7EC4\\u4E2D\\u8FDE\\u7EED\\u63D2\\u5165 n = m*I >> 2 \\u4E2A\\u5143\\u7D20\\n\\u5373\\u6BCF m \\u6B21\\u63D2\\u5165\\u6570\\u636E\\u5C31\\u8981\\u6269\\u5BB9\\u4E00\\u6B21\\uFF0C\\u6BCF\\u6B21\\u6269\\u5BB9\\u5EF6\\u957F I \\u7684\\u957F\\u5EA6\\n\\u8FDE\\u7EED\\u7684\\u6269\\u5BB9\\u64CD\\u4F5C\\u4E3A\\uFF1A\\n0\\u3001I\\u30012I\\u30013I\\u3001...\\u3001(m-1)*I \\u6B21\\u8017\\u65F6\\u64CD\\u4F5C\\uFF0C\\u603B\\u548C\\u4E3A O(n^2) \\u7684\\u590D\\u6742\\u5EA6\\uFF0C\\u5206\\u644A\\u590D\\u6742\\u5EA6\\u4E3A O(n)\\n>> \\u5206\\u644A\\u7684\\u6982\\u5FF5\\uFF0C\\u56E0\\u4E3A\\u6B64\\u5904\\u80AF\\u5B9A\\u662F\\u8FDE\\u7EED\\u8C03\\u7528\\u7684\\uFF0C\\u6240\\u4EE5\\u5206\\u644A\\u7684\\u590D\\u6742\\u5EA6\\u66F4\\u6709\\u610F\\u4E49\\n\\u4E5F\\u5C31\\u662F\\u5F53 n \\u5F88\\u5927\\u7684\\u65F6\\u5019\\uFF0C\\u8FDE\\u7EED\\u63D2\\u5165\\u7684\\u64CD\\u4F5C\\u4E2D\\uFF0C\\u6269\\u5BB9\\u7684\\u64CD\\u4F5C\\u6BCF\\u6B21\\u5C31\\u8981 O(n)\\n\\u4ECE\\u76F4\\u89C2\\u610F\\u4E49\\u4E0A\\u6765\\u770B\\uFF0Cn \\u8D8A\\u5927\\uFF0C\\u5E38\\u6570\\u6269\\u5BB9\\u7684\\u6B21\\u6570\\u662F\\u7EBF\\u6027\\u7684\\u5173\\u7CFB\\n\\n\\u800C\\u500D\\u589E\\u7684\\u8BDD\\uFF0C\\u6BCF\\u6B21\\u63D2\\u5165 n = 2^m >> 2 \\u4E2A\\u5143\\u7D20\\n\\u4F1A\\u5728\\u7B2C 1, 2, 4, 8, 16,..., 2^m \\u6B21\\u6269\\u5BB9\\uFF0C\\u603B\\u4F53\\u8017\\u65F6 O(n)\\n\\u5206\\u644A\\u7ED9\\u6BCF\\u6B21\\u6269\\u5BB9\\u53EA\\u9700\\u8981 O(1)\\n\\u76F4\\u89C2\\u610F\\u4E49\\u4E0A\\u6765\\u8BB2\\uFF0Cn \\u8D8A\\u5927\\uFF0C\\u6269\\u5BB9\\u8D8A\\u5927\\uFF0C\\u6B21\\u6570\\u4E5F\\u5C31\\u76F8\\u6BD4\\u66F4\\u5C0F\\u4E86\\n\\n\\u6240\\u4EE5\\u3010\\u500D\\u589E\\u3011\\u7684\\u65B9\\u5F0F\\u5728\\u590D\\u6742\\u5EA6\\u4E0A\\u66F4\\u4F18\\uFF0C\\u6269\\u5BB9\\u6548\\u7387\\u4E0A\\uFF0C\\u6CA1\\u6709\\u3010\\u5E38\\u6570\\u3011\\u597D\\uFF0C\\u4F46\\u662F\\u81F3\\u5C11\\u4E5F\\u6709 50% \\u7684\\u4F7F\\u7528\\u7387\\n\")), mdx(\"h5\", null, \"2.1.3 \\u6570\\u7EC4\\u6392\\u5E8F\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"\\u6709\\u5E8F\\u6570\\u7EC4\"), \" \\u987E\\u540D\\u601D\\u4E49\\uFF0C\\u6570\\u7EC4\\u5185\\u90E8\\u7684\\u5143\\u7D20\\u662F\\u6309\\u7167\\u987A\\u5E8F\\u6392\\u5217\\u597D\\u7684\\uFF0C\\u8FD9\\u6837\\u7684\\u4E00\\u4E2A\\u7279\\u6027\\uFF0C\\u5BF9\\u4E8E\\u67E5\\u627E\\u7684\\u76EE\\u7684\\uFF0C\\u76F8\\u6BD4\\u65E0\\u5E8F\\u6570\\u7EC4\\u590D\\u6742\\u5EA6\\u66F4\\u4F4E\\u3002\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"\\u6392\\u5E8F\"), \" \\u76EE\\u524D\\u7684\\u5F88\\u591A\\u7ECF\\u5178\\u6392\\u5E8F\\u90FD\\u662F\\u5728\\u6570\\u7EC4\\u4E0A\\u7684\\u5B9E\\u73B0\\uFF0C\\u4E0D\\u540C\\u7684\\u601D\\u60F3\\u548C\\u590D\\u6742\\u5EA6\\u90FD\\u662F\\u6700\\u57FA\\u7840\\u7684\\u7B97\\u6CD5\\u3002\"), mdx(\"p\", null, \"\\u8FD9\\u91CC\\u6709\\u5355\\u72EC\\u7684\\u793A\\u4F8B\\u6765\\u5C55\\u793A\\u4E0D\\u540C\\u7684\\u6392\\u5E8F\\uFF1A \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"/studio/algorithms-sort\"\n  }, \"\\u5404\\u7C7B\\u6392\\u5E8F\\u6F14\\u793A\")), mdx(\"h5\", null, \"2.1.4 \\u4E8C\\u5206\\u67E5\\u627E\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"\\u4E8C\\u5206\\u67E5\\u627E\"), \" \\u5728\\u6709\\u5E8F\\u6570\\u7EC4\\u7684\\u524D\\u63D0\\u4E0B\\uFF0C\\u67E5\\u8BE2\\u90E8\\u5206\\u53EF\\u4EE5\\u4F7F\\u7528\\u4E8C\\u5206\\u67E5\\u627E\\u7684\\u65B9\\u6CD5\\uFF0C\\u5BF9\\u6570\\u7EC4\\u8FDB\\u884C\\u51CF\\u800C\\u6CBB\\u4E4B\\uFF0C\\u5FEB\\u901F\\u964D\\u4F4E\\u95EE\\u9898\\u7684\\u89C4\\u6A21\\u4ECE\\u800C\\u5B9E\\u73B0\\u8F83\\u597D\\u7684\\u590D\\u6742\\u5EA6\\u3002\"), mdx(\"p\", null, \"\\u4E8C\\u5206\\u641C\\u7D22\\uFF08binary search\\uFF09\\uFF0C\\u4E5F\\u53EB\\u6298\\u534A\\u641C\\u7D22\\uFF08half-interval search\\uFF09\\u3001\\u5BF9\\u6570\\u641C\\u7D22\\uFF08logarithmic search\\uFF09\\uFF0C\\u56E0\\u4E3A\\u6BCF\\u6B21\\u9009\\u53D6\\u4E2D\\u95F4\\u503C\\u6BD4\\u8F83\\u540E\\u5C31\\u80FD\\u77E5\\u9053\\u5728\\u524D\\u540E\\u54EA\\u4E2A\\u533A\\u95F4\\u4E86\\uFF0C\\u6240\\u4EE5\\u4E00\\u662F\\u9700\\u8981\\u80FD\\u591F\\u9009\\u53D6\\u4E2D\\u95F4\\u7684\\u503C\\uFF0C\\u4E8C\\u662F\\u5E8F\\u5217\\u5DF2\\u7ECF\\u6392\\u5E8F\\uFF0C\\u6240\\u4EE5\\u94FE\\u8868\\u7684\\u7ED3\\u6784\\u5C31\\u65E0\\u6CD5\\u7528\\u4E86\\u3002\"), mdx(\"p\", null, \"\\u7528\\u4E8C\\u5206\\u67E5\\u627E\\u6CD5\\u627E\\u5BFB\\u8FB9\\u754C\\u503C\\uFF08\\u4EE5\\u975E\\u964D\\u5E8F\\u5E8F\\u5217\\u67E5\\u627E\\u7B2C\\u4E00\\u4E2A\\u76EE\\u6807\\u503C\\u4E3A\\u4F8B\\uFF09\\uFF1A\"), mdx(\"p\", null, \"\\u6309\\u7167\\u5E38\\u7406\\uFF0C\\u6211\\u4EEC\\u7684\\u7B2C\\u4E00\\u60F3\\u6CD5\\u90FD\\u662F\\u627E\\u5230\\u4E0E\\u76EE\\u6807\\u503C\\u76F8\\u540C\\u7684\\u5143\\u7D20\\uFF0C\\u8FD4\\u56DE\\u4E0B\\u6807\\u5373\\u53EF\\uFF0C\\u4F46\\u662F\\u9690\\u542B\\u7684\\u76EE\\u7684\\u5176\\u5B9E\\u6709\\u4E24\\u4E2A\\uFF1A\\u627E\\u5230\\u5B58\\u5728\\u4E0E\\u5426 + \\u627E\\u5230\\u7B2C\\u4E00\\u4E2A\\u76EE\\u6807\\uFF1B\\u6309\\u7167\\u8FD9\\u4E24\\u4E2A\\u76EE\\u7684\\u6D89\\u53CA\\u7684\\u6BD4\\u5BF9\\u548C\\u5224\\u65AD\\uFF0C\\u53EF\\u4EE5\\u8F6C\\u5316\\u4E3A\\u4E00\\u4E2A\\u76EE\\u6807\\uFF1A\\u627E\\u5230\\u5C0F\\u4E8E\\u76EE\\u6807\\u503C\\u7684\\u6700\\u53F3\\u5143\\u7D20\\u3002\"), mdx(\"p\", null, \"\\u8FD9\\u6837\\u6BCF\\u6B21\\u4E2D\\u95F4\\u6307\\u9488\\u53EA\\u9700\\u8981\\u5224\\u65AD\\u4E0D\\u5C0F\\u4E8E\\u76EE\\u6807\\u503C\\uFF0C\\u8BF4\\u660E\\u5C0F\\u4E8E\\u7684\\u503C\\u90FD\\u5728\\u524D\\u9762\\uFF0C\\u540E\\u9762\\u7684\\u533A\\u95F4\\u5373\\u53EF\\u76F4\\u63A5\\u7565\\u53BB\\uFF0C\\u53F3\\u8FB9\\u754C\\u5728\\u8FED\\u4EE3\\u4E2D\\u5373\\u53EF\\u9010\\u6E10\\u903C\\u8FD1\\u6700\\u540E\\u4E00\\u4E2A\\u5C0F\\u4E8E\\u76EE\\u6807\\u503C\\u7684\\u5143\\u7D20\\u3002\"), mdx(\"p\", null, \"\\u5F97\\u5230\\u6700\\u540E\\u4E00\\u4E2A\\u5C0F\\u4E8E\\u76EE\\u6807\\u503C\\u7684\\u5143\\u7D20\\uFF0C\\u540E\\u9762\\u7684\\u5143\\u7D20\\u7B49\\u4E8E\\u76EE\\u6807\\u503C\\uFF0C\\u5219\\u4E00\\u5B9A\\u662F\\u7B2C\\u4E00\\u4E2A\\u76EE\\u6807\\u503C\\uFF0C\\u5982\\u679C\\u4E0D\\u7B49\\u4E8E\\u76EE\\u6807\\u503C\\uFF0C\\u5219\\u8BF4\\u660E\\u5927\\u4E8E\\u76EE\\u6807\\u503C\\uFF0C\\u5728\\u6709\\u5E8F\\u5E8F\\u5217\\u4E2D\\u8BF4\\u660E\\u76EE\\u6807\\u503C\\u4E0D\\u5B58\\u5728\\u3002\"), mdx(\"p\", null, \"\\u4E0A\\u9762\\u8FD9\\u4E2A\\u65B9\\u6CD5\\uFF0C\\u4ECE\\u5BFB\\u627E\\u76EE\\u6807\\u503C\\uFF0C\\u53D8\\u6210\\u5BFB\\u627E\\u521A\\u597D\\u5C0F\\u4E8E\\u76EE\\u6807\\u503C\\u7684\\u8FB9\\u754C\\uFF0C\\u7A0B\\u5E8F\\u4E0A\\u66F4\\u597D\\u5904\\u7406\\u5224\\u65AD\\u548C\\u6BD4\\u5BF9\\u90E8\\u5206\\uFF0C\\u6700\\u540E\\u7684\\u7ED3\\u679C\\u4E5F\\u80FD\\u66F4\\u597D\\u7684\\u6EE1\\u8DB3\\u91CD\\u590D\\u5143\\u7D20\\u7B2C\\u4E00\\u4E2A\\u503C\\u7684\\u95EE\\u9898\\u3002\"), mdx(\"p\", null, \"\\u6362\\u4E2A\\u8868\\u8FF0\\u65B9\\u5F0F\\u5C31\\u662F\\uFF1A\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"\\u5728\\u5E8F\\u5217\\u4E2D\\u627E\\u5230\\u521A\\u597D\\u5C0F\\u4E8E\\u76EE\\u6807\\u503C\\u7684\\u5143\\u7D20\\uFF0C\\u4F7F\\u5F97\\u5E8F\\u5217\\u88AB\\u5206\\u4E3A\\u5C0F\\u4E8E\\u76EE\\u6807\\u503C\\uFF0C\\u548C\\u5927\\u4E8E\\u7B49\\u4E8E\\u76EE\\u6807\\u503C\\u7684\\u4E24\\u4E2A\\u533A\\u95F4\\u3002\\u6700\\u540E\\u53EA\\u9700\\u8981\\u5224\\u65AD\\u540E\\u9762\\u7684\\u533A\\u95F4\\u7B2C\\u4E00\\u4E2A\\u5143\\u7D20\\u5373\\u53EF\\u3002\"), mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"search 16 in \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"[10, 11, 12, 13, 15, 15, 16, 16, 18, 19]\"), \" => \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"[10, 11, 12, 13, 15, 15]\"), \" + \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"[16, 16, 18, 19]\"))), mdx(\"p\", null, \"\\u4EE3\\u7801\\u6D41\\u7A0B\\u793A\\u4F8B\\u4E3A\\uFF1A\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-js\"\n  }, \"var v = [10, 11, 12, 13, 15, 15, 16, 16, 18, 19]\\nvar target = 16 // \\u5B9E\\u9645\\u8981\\u627E\\u6BD4 16 \\u521A\\u5C0F\\u7684\\u540E\\u9762\\u7684 15\\nvar start = 0, end = 9 // \\u5DE6\\u53F3\\u6307\\u9488\\n\\n// \\u5411\\u4E0A\\u53D6\\u6574\\u4FDD\\u8BC1\\u5DE6\\u8FB9\\u754C\\u4E0D\\u52A8\\u7684\\u60C5\\u51B5\\uFF0C\\u4E2D\\u95F4\\u6307\\u9488\\u6700\\u540E\\u80FD\\u4E0A\\u5347\\u5230\\u53F3\\u8FB9\\u754C\\nvar getMiddle = (start, end) => start + math.ceil((end - start) / 2)\\n\\n// loop 1\\n// [10, 11, 12, 13, 15, <15>, 16, 16, 18, 19]\\nmiddle = getMiddle(0, 9) = 5\\nv[middle] = 15 < target // \\u76EE\\u6807\\u5728\\u53F3\\u4FA7\\nstart = middle = 5 // \\u5C0F\\u4E8E\\u76EE\\u6807\\u503C\\u53EF\\u80FD\\u662F\\u8FB9\\u754C\\uFF0C\\u6240\\u4EE5\\u5DE6\\u8FB9\\u754C\\u79FB\\u52A8\\u5230\\u4E2D\\u95F4\\u6307\\u9488\\u5904\\n// [15, 16, 16, 18, 19]\\n\\n// loop 2\\n// [15, 16, <16>, 18, 19]\\nmiddle = getMiddle(5, 9) = 7\\nv[middle] = 16 == target // \\u7B49\\u4E8E\\u6216\\u8005\\u5927\\u4E8E\\uFF0C\\u90FD\\u8868\\u793A\\u76EE\\u6807\\uFF08\\u521A\\u597D\\u5C0F\\u4E8E\\u90A3\\u4E2A\\uFF09\\u5728\\u5DE6\\u8FB9\\nend = middle - 1 = 7 - 1 = 6 // \\u4E2D\\u95F4\\u6307\\u9488\\u5F53\\u524D\\u4E0D\\u662F\\u8FB9\\u754C\\uFF0C\\u53F3\\u6307\\u9488\\u81F3\\u5C11\\u5728\\u4E2D\\u95F4\\u6307\\u9488\\u5DE6\\u4FA7\\n// [15, 16]\\n\\n// loop 3\\n// [15, <16>]\\nmiddle = getMiddle(5, 6) = 6\\nv[middle] = 16 == target // \\u76EE\\u6807\\u5728\\u5DE6\\u4FA7\\nend = middle - 1 = 6 - 1 = 5 //  \\u548C loop 2 \\u76F8\\u540C\\uFF0C\\u53F3\\u4FA7\\u6307\\u9488\\u5728\\u4E2D\\u95F4\\u6307\\u9488\\u5DE6\\u8FB9\\n// [15]\\n\\n// loop 4\\n// \\u5FAA\\u73AF\\u7EC8\\u6B62\\nstart == end == 5\\n\\n// \\u8F93\\u51FA\\u5224\\u65AD\\uFF08\\u627E\\u5230\\u7684\\u8FD9\\u4E2A\\u503C\\u7684\\u4E0B\\u4E00\\u4E2A\\u503C\\u662F\\u76EE\\u6807\\u503C\\uFF0C\\u6216\\u8005\\u627E\\u4E0D\\u5230\\uFF09\\nv[start + 1] == target ? (start +) : -1\\n\\n\")), mdx(\"h5\", null, \"2.1.5 \\u76F8\\u5173\\u7B97\\u6CD5\"), mdx(\"p\", null, \"\\u53CC\\u6307\\u9488\\u3001\\u5FEB\\u901F\\u6392\\u5E8F\"), mdx(\"h4\", null, \"2.2 \\u94FE\\u8868\\uFF08Linked List\\uFF09\"), mdx(\"p\", null, \"\\u4E00\\u79CD\\u5178\\u578B\\u7684\\u5217\\u8868\\uFF0C\\u7279\\u5F81\\u662F\\u65E0\\u6CD5\\u4F7F\\u7528\\u4E0B\\u6807\\uFF0C\\u6BCF\\u4E2A\\u5143\\u7D20\\u9664\\u4E86\\u6570\\u636E\\uFF0C\\u989D\\u5916\\u5305\\u542B\\u4E00\\u4E2A\\u6307\\u9488\\u6216\\u8005\\u5F15\\u7528\\u76F8\\u90BB\\u7684\\u5143\\u7D20\\u3002\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-js\"\n  }, \"// Definition for singly-linked list.\\nfunction ListNode(val) {\\n  this.val = val;\\n  this.next = null;\\n}\\n\")), mdx(\"p\", null, \"\\u524D\\u7AEF\\u4E5F\\u6709\\u5F88\\u591A\\u4E1A\\u52A1\\u6D89\\u53CA\\uFF0C\\u6BD4\\u5982\\u5FAA\\u73AF\\u64AD\\u653E\\u7684 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"slider\"), \" \\u7EC4\\u4EF6\\u7684\\u6570\\u636E\\u50A8\\u5B58\\u53EF\\u4EE5\\u4F7F\\u7528\\u94FE\\u8868\\uFF0C\\u751A\\u81F3\\u53EF\\u4EE5\\u7528\\u53CC\\u5411\\u94FE\\u8868\\u5B9E\\u73B0\\u5FAA\\u73AF\\u64AD\\u653E\\u3002\\u8FD8\\u6709 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"element.parentElement\"), \" \\u548C \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"element.firstElementChild\"), \"\\u3002\\u8FD8\\u6709 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"React\"), \" \\u4E2D\\u7684 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Fiber Node\"), \" \\u548C \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Fiber tree\"), \" \\u90FD\\u662F\\u94FE\\u8868\\u7684\\u5B9E\\u73B0\\u3002\"), mdx(\"p\", null, \"\\u94FE\\u8868\\u7684\\u7279\\u6027\\u548C\\u6570\\u7EC4\\u662F\\u76F8\\u53CD\\u7684\\uFF0C\\u5176\\u4E2D\\u63D2\\u5165\\u3001\\u79FB\\u9664\\u6570\\u636E\\u975E\\u5E38\\u65B9\\u4FBF\\uFF0C\\u4F46\\u662F\\u65E0\\u6CD5\\u6309\\u7D22\\u5F15\\u8BFB\\u53D6\\uFF0C\\u6240\\u4EE5\\u51E0\\u4E4E\\u53EA\\u80FD\\u904D\\u5386\\u6765\\u67E5\\u627E\\u5143\\u7D20\\u3002\\u9664\\u6B64\\u4E4B\\u5916\\u76F8\\u5173\\u7B97\\u6CD5\\u548C\\u540C\\u4E3A\\u7EBF\\u6027\\u5E8F\\u5217\\u7684\\u6570\\u7EC4\\u76F8\\u4F3C\\u3002\"), mdx(RunTSX, {\n    codeStr: linkStr,\n    mdxType: \"RunTSX\"\n  }), mdx(\"h4\", null, \"2.3 \\u5806\\u6808\\uFF08Stack\\uFF09\\u548C \\u961F\\u5217\\uFF08Queue\\uFF09\"), mdx(\"p\", null, \"\\u8FD9\\u4E24\\u4E2A\\u6570\\u636E\\u7ED3\\u6784\\u76F8\\u6BD4\\u6570\\u7EC4\\u548C\\u94FE\\u8868\\u66F4\\u4E0A\\u5C42\\uFF0C\\u6570\\u636E\\u7684\\u771F\\u5B9E\\u50A8\\u5B58\\u672C\\u8D28\\u4E0A\\u8FD8\\u662F\\u6570\\u7EC4\\u548C\\u94FE\\u8868\\uFF0C\\u5806\\u6808\\u548C\\u961F\\u5217\\u66F4\\u591A\\u7684\\u662F\\u4E1A\\u52A1\\u4E0A\\u7684\\u6570\\u636E\\u6A21\\u578B\\uFF0C\\u800C\\u4E14\\u8FD9\\u4E24\\u4E2A\\u7ED3\\u6784\\u4E00\\u822C\\u662F\\u5728\\u6570\\u7EC4\\u548C\\u94FE\\u8868\\u7684\\u57FA\\u7840\\u4E0A\\u5B9E\\u73B0\\u7684\\u3002\"), mdx(\"p\", null, \"\\u540E\\u8FDB\\u5148\\u51FA(last in first off\\uFF0CLIFO)\\u7684\\u6570\\u636E\\u7ED3\\u6784 \\u2193\"), mdx(\"p\", null, mdx(\"figure\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-figure\",\n    \"style\": {}\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"367px\"\n    }\n  }, \"\\n      \", mdx(\"a\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-link\",\n    \"href\": \"/static/586e3a4e4c61d7ebc266b7bbb5f3cc2a/cc41e/stack.png\",\n    \"style\": {\n      \"display\": \"block\"\n    },\n    \"target\": \"_blank\",\n    \"rel\": [\"noopener\"]\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"80.6949806949807%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAACXBIWXMAAAsSAAALEgHS3X78AAACTklEQVQ4y61US0vjUBTOv3Lhyj/gX/CFD/CxcONKEHQlrgRR3IgbNy5E2gFdtCOlKdjpWGx90KavRdtJ0jbNs23apN+cXM2YcQqFmTlwSC73fN+95/B9lzs4ELG42MbGhoK5OQUXF00AffR6ffgxHA5Z+jEYDNDpWNjZaWJpqY319TYWFpq4vW2B299v0sLC2pqB2VkLl5cWQWyYZge6riMY3W6XDuqhUChQCtjdtQhrYnXVJKyOm5s2OMBhN6JzPQiq1TIajQZE8QcMw4AsNxiZZXkHGKjVashkMqwGcN+xfrrgvE78bmy7j1wuh1gshnQ67TWLh4d79rVtk9UoSgvxeBz5fP59HL8n588nOCM/TNOGILRRKmkoFjVUKhqCZUGsn5y/ESxwnLd1JKJgYkLH1JSJyUkL09MKJKnD9lz3AxOMkYR+cTKpYmZGwfKyivl5DZubLWq5N57wc/jFqZRGklJIFipWVjRsbX0QjhrRWMKnJw3b2yL29mTSnAxPs5r2D4SC0MHhYRcnJz0cHdk4O7NISv2/JywULCLScXpq4PjYwPm5Np4wKJnPEqpWO7i6MhAKmbi+NslaOllu8Icdg+TcKC293XBIbrERjTokdBd3dy54fkD2c9jeKNwvHf7P4LyXo1wuQRJF8q1MtxJZ1ut1PD8/kzsqzM+etyVJJtkoUFotyORlQRDQon/D0CERVlVVcI7j4HsqhXAoBD6RIDEnkXl8ZA8AzyeQzWZZfkveIxwOMw+nqF6gFycS/Yo4z6NULNLeF7y+vOAnZLGm2nusH6cAAAAASUVORK5CYII=')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"img\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"alt\": \"堆栈\",\n    \"title\": \"堆栈\",\n    \"src\": \"/static/586e3a4e4c61d7ebc266b7bbb5f3cc2a/cc41e/stack.png\",\n    \"srcSet\": [\"/static/586e3a4e4c61d7ebc266b7bbb5f3cc2a/2c191/stack.png 259w\", \"/static/586e3a4e4c61d7ebc266b7bbb5f3cc2a/cc41e/stack.png 367w\"],\n    \"sizes\": \"(max-width: 367px) 100vw, 367px\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    },\n    \"loading\": \"lazy\"\n  }), \"\\n  \"), \"\\n    \"), \"\\n    \", mdx(\"figcaption\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-figcaption\"\n  }, \"\\u5806\\u6808\"), \"\\n  \")), mdx(\"p\", null, \"\\u5148\\u8FDB\\u5148\\u51FA (fisrt in first out\\uFF0CFIFO)\\u7684\\u7ED3\\u6784 \\u2193\"), mdx(\"p\", null, mdx(\"figure\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-figure\",\n    \"style\": {}\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"386px\"\n    }\n  }, \"\\n      \", mdx(\"a\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-link\",\n    \"href\": \"/static/e6f4e7873c0359a6fbdd5465f984c534/4576e/queue.png\",\n    \"style\": {\n      \"display\": \"block\"\n    },\n    \"target\": \"_blank\",\n    \"rel\": [\"noopener\"]\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"76.83397683397683%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAYAAADkmO9VAAAACXBIWXMAAAsSAAALEgHS3X78AAACWElEQVQ4y6VTaUsjQRDNPxTEg3wRBG8FE1DwZ+if8KuubtAIm4NVzGUEE0UhGmNmkkyOyZwxmettdY+Jrhth2S0oarqm+/WrqtcB1wWZg8NDFUdHXbaA63rwPA//YgHHYaGPxUUdKysM0IPj+IBDH9rH3DD/+eKAz3CArS0d29sKB/RzeGPrM2b+2cZVMWK4uqpjbU3lyV7vFZJUgaK0GORos6a1IMsSTFOmKpw/GDN/Y2hjd1fG3l6HH2w2NezvX+L4OIdstomHBxP39zri8TJOTq4Ridx93cMhbds26GaFf5fLFiYmDGJdoyhgYaGD+XkR09MKNjYEzMy8olIRaN8TRLGGer1OUaSKFAb4js7KlyQBZ2dFOmQTYJ1im1ph0MA6CAZNDhgMOri6ukYs9gPn5+e4vb2jSq4gCAICpVIJmUyGElkUCkWkUj9xcJDG1JRDIHVMTrawtKQSSxmzsyaBi5TrYzBwRhKrVh/fS9Z1nRotc8qNhgRdl3Fz0yRmCkIhkdhUsb4uEZCEubkuNjcrlFPR71ujKUciBVxciD7guMZalks9UlGr6Xh5UekynXu1qlFOo38aMXPhK8RDOKxjebnzPpRxgv0bYw+AWTjMhtX9GpC547iche/eh+iNnqZt+4ChkDbScAD/YcNidnZaxFLyAW3bhmEYvz0l0zTRbrf5sDRNo4kOoKoqZ2lZFn8lvV6PBuifU5QB7X3l/Qw0SJRMS9FoFIl4DPl8nnsiEUcymUQum+HrOGkul8shnU4jTTIrFG9xehrFZSqF5+cnRL5/4yr5BRvrSBkMX0chAAAAAElFTkSuQmCC')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"img\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"alt\": \"队列\",\n    \"title\": \"队列\",\n    \"src\": \"/static/e6f4e7873c0359a6fbdd5465f984c534/4576e/queue.png\",\n    \"srcSet\": [\"/static/e6f4e7873c0359a6fbdd5465f984c534/2c191/queue.png 259w\", \"/static/e6f4e7873c0359a6fbdd5465f984c534/4576e/queue.png 386w\"],\n    \"sizes\": \"(max-width: 386px) 100vw, 386px\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    },\n    \"loading\": \"lazy\"\n  }), \"\\n  \"), \"\\n    \"), \"\\n    \", mdx(\"figcaption\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-figcaption\"\n  }, \"\\u961F\\u5217\"), \"\\n  \")), mdx(\"p\", null, \"\\u5177\\u4F53\\u5B9E\\u73B0\\u8FD9\\u91CC\\u4E0D\\u505A\\u4E86\\uFF0C\\u770B\\u4E0B js \\u91CC\\u9762\\u7684\\u76F8\\u5173\\u51FD\\u6570\\uFF1A\"), mdx(RunTSX, {\n    codeStr: stackQueueStr,\n    mdxType: \"RunTSX\"\n  }), mdx(\"h3\", null, \"3. \\u975E\\u7EBF\\u6027\\u7ED3\\u6784:\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u6563\\u5217\\u8868 / \\u54C8\\u5E0C\\u8868\\uFF08Hash table\\uFF09\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u56FE\\uFF08Graph\\uFF09\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u6811\\uFF08Tree\\uFF09\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u5806\\u79EF\\uFF08Heap\\uFF09\")), mdx(\"h4\", null, \"3.1 \\u6563\\u5217\\u8868 / \\u54C8\\u5E0C\\u8868\\uFF08Hash table\\uFF09\"), mdx(\"p\", null, \"\\u901A\\u8FC7\\u54C8\\u5E0C\\u51FD\\u6570\\u5C06\\u76EE\\u6807\\u503C\\u6620\\u5C04\\u5230\\u4E00\\u4E2A\\u8868\\u4E2D\\uFF0C\\u76EE\\u7684\\u662F\\u52A0\\u5FEB\\u67E5\\u627E\\u901F\\u5EA6\\u3002\"), mdx(\"p\", null, \"\\u5BF9\\u54C8\\u5E0C\\u8868\\u7684\\u6700\\u76F4\\u63A5\\u5370\\u8C61\\u5C31\\u662Fmd5\\u9A8C\\u8BC1\\u548C\\u6570\\u636E\\u5E93\\u5206\\u8868\\u3002MD5\\u80FD\\u591F\\u5BF9\\u4EFB\\u610F\\u8F93\\u5165\\u4EA7\\u751F\\u56FA\\u5B9A\\u957F\\u5EA6\\u7684\\u8F93\\u51FA\\uFF0C\\u56E0\\u6B64\\u76F8\\u540C\\u7684\\u6587\\u4EF6\\u9A8C\\u8BC1\\u4E0A\\u5F88\\u76F4\\u89C2\\u3002\\u5F53\\u4E00\\u4E2A\\u6570\\u636E\\u8868\\u6570\\u636E\\u91CF\\u5F88\\u5927\\u662F\\uFF0C\\u7528\\u54C8\\u5E0C\\u7684\\u65B9\\u5F0F\\uFF0C\\u5C06\\u6570\\u636E\\u6620\\u5C04\\u5230\\u591A\\u4E2A\\u7684\\u6570\\u636E\\u8868\\u91CC\\u9762\\uFF0C\\u89C4\\u5219\\u5C31\\u662F\\u54C8\\u5E0C\\u51FD\\u6570\\uFF0C\\u6BD4\\u5982\\u6839\\u636E\\u7528\\u6237 id \\u5C3E\\u6570\\uFF0C0-9\\u53EF\\u4EE5\\u5C06\\u5168\\u90E8\\u6570\\u636E\\u5206\\u5230 10 \\u4E2A\\u8868\\u4E2D\\uFF0C\\u67E5\\u8BE2\\u7684\\u65F6\\u5019\\u6839\\u636E\\u5C3E\\u6570\\u8BA1\\u7B97\\u80FD\\u77E5\\u9053\\u53BB\\u54EA\\u4E2A\\u8868\\u67E5\\u8BE2\\u3002\"), mdx(\"p\", null, \"\\u54C8\\u5E0C/\\u6563\\u5217\\u51FD\\u6570\\u662F\\u54C8\\u5E0C\\u7B97\\u6CD5\\u7684\\u5173\\u952E\\uFF0C\\u4E0D\\u540C\\u7684\\u8F93\\u5165\\u7ECF\\u7531\\u8FD9\\u4E2A\\u51FD\\u6570\\u80FD\\u591F\\u8F93\\u51FA\\u4E00\\u4E2A\\u786E\\u5B9A\\u7684\\u6458\\u8981\\u4FE1\\u606F\\uFF0C\\u6839\\u636E\\u8FD9\\u4E2A\\u6458\\u8981\\u4FE1\\u606F\\u5C31\\u80FD\\u627E\\u5230\\u8FD9\\u4E2A\\u8F93\\u5165\\u3002\\u8FD9\\u4E2A\\u51FD\\u6570\\u7684\\u76EE\\u7684\\u5C31\\u662F\\u5BF9\\u4E8E\\u4E0D\\u540C\\u7684\\u8F93\\u5165\\u5E94\\u8BE5\\u4EA7\\u751F\\uFF08\\u5747\\u5300\\u5206\\u5E03\\u4E14\\u5DEE\\u5F02\\u5927\\u7684\\u6458\\u8981\\uFF09\\u4E0D\\u540C\\u7684\\u7ED3\\u6784\\u3002\"), mdx(\"p\", null, \"\\u54C8\\u5E0C\\u7684\\u51FD\\u6570\\u5982\\u679C\\u6CA1\\u529E\\u6CD5\\u5BF9\\u4E0D\\u540C\\u7684\\u8F93\\u5165\\u4EA7\\u751F\\u4E0D\\u540C\\u7684\\u8F93\\u51FA\\uFF0C\\u4E5F\\u5C31\\u662F\\u5B58\\u5728\\u4E0D\\u540C\\u8F93\\u5165\\u76F8\\u540C\\u8F93\\u51FA\\u7684\\u60C5\\u51B5\\uFF0C\\u5C31\\u662F\\u4EA7\\u751F\\u4E86\\u51B2\\u7A81\\uFF0C\\u6216\\u8005\\u53EB\\u78B0\\u649E\\u3002\\u6BD4\\u5982\\u5BC6\\u7801\\u7684\\u54C8\\u5E0C\\u503C\\u4F5C\\u4E3A\\u5BC6\\u7801\\u7B49\\u540C\\u7684\\u9A8C\\u8BC1\\u7684\\u65F6\\u5019\\uFF0C\\u4E07\\u4E07\\u4E0D\\u60F3\\u8FD9\\u4E2A\\u78B0\\u649E\\u6982\\u7387\\u5F88\\u5927\\uFF0C\\u4E00\\u65E6\\u4E0D\\u540C\\u7684\\u5BC6\\u7801\\u80FD\\u4EA7\\u751F\\u76F8\\u540C\\u7684\\u54C8\\u5E0C\\u503C\\uFF0C\\u9A8C\\u8BC1\\u5C31\\u51FA\\u73B0\\u4E86\\u95EE\\u9898\\u3002\"), mdx(\"h4\", null, \"3.2 \\u56FE\\uFF08Graph\\uFF09\"), mdx(\"p\", null, \"\\u56FE\\u662F\\u4E00\\u79CD\\u590D\\u6742\\u7684\\u975E\\u7EBF\\u6027\\u7ED3\\u6784\\uFF0C\\u62BD\\u8C61\\u6027\\u66F4\\u9AD8\\u4E9B\\uFF0C\\u8868\\u793A\\u7684\\u662F\\u591A\\u5BF9\\u591A\\u7684\\u6570\\u636E\\u7ED3\\u6784\\uFF0C\\u5728\\u56FE\\u5F62\\u7ED3\\u6784\\u4E2D\\uFF0C\\u4EFB\\u610F\\u4E24\\u4E2A\\u6570\\u636E\\u5143\\u7D20\\u4E4B\\u95F4\\u90FD\\u6709\\u53EF\\u80FD\\u76F8\\u5173\\u3002\"), mdx(\"p\", null, \"\\u6BD4\\u5982\\u5730\\u56FE\\u76F8\\u5173\\u4E1A\\u52A1\\u4E2D\\uFF0C\\u6BCF\\u4E2A\\u5730\\u70B9\\u7528\\u8282\\u70B9\\u8868\\u793A\\uFF0C\\u90A3\\u4E48\\u6BCF\\u4E24\\u4E2A\\u8282\\u70B9\\u7684\\u53EF\\u80FD\\u8DEF\\u7531\\u5C31\\u662F\\u56FE\\u5F62\\u7ED3\\u6784\\uFF0C\\u91CC\\u9762\\u6D89\\u53CA\\u7684\\u6700\\u77ED\\u8DEF\\u5F84\\u7B49\\u95EE\\u9898\\u3002\\u6BD4\\u5982\\u7F51\\u7EDC\\u7ED3\\u6784\\u4E2D\\uFF0C\\u4E92\\u8054\\u7F51\\u4E2D\\u7684\\u6BCF\\u4E24\\u4E2A\\u8282\\u70B9\\u4E5F\\u662F\\u56FE\\u7684\\u7ED3\\u6784\\u3002\"), mdx(\"p\", null, \"\\u8DDF\\u5177\\u4F53\\u7684\\u4E1A\\u52A1\\u5B58\\u50A8\\u5173\\u7CFB\\u5F88\\u5927\\uFF0C\\u800C\\u4E14\\u76F8\\u5173\\u7B97\\u6CD5\\u4E5F\\u5F88\\u591A\\uFF0C\\u4F46\\u662F\\u5355\\u72EC\\u7684\\u524D\\u7AEF\\u91CC\\u9762\\u6D89\\u53CA\\u8F83\\u5C11\\uFF0C\\u76EE\\u524D\\u5148\\u4E0D\\u6DF1\\u5165\\u3002\"), mdx(\"h4\", null, \"3.4 \\u6811\\uFF08Tree\\uFF09\"), mdx(\"p\", null, mdx(\"figure\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-figure\",\n    \"style\": {}\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"768px\"\n    }\n  }, \"\\n      \", mdx(\"a\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-link\",\n    \"href\": \"/static/bc39d77f54affdee6bb259153f9b99c8/23359/tree.jpg\",\n    \"style\": {\n      \"display\": \"block\"\n    },\n    \"target\": \"_blank\",\n    \"rel\": [\"noopener\"]\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"54.440154440154444%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAALABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAECBf/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAd4mxDD/xAAUEAEAAAAAAAAAAAAAAAAAAAAg/9oACAEBAAEFAl//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAUEAEAAAAAAAAAAAAAAAAAAAAg/9oACAEBAAY/Al//xAAYEAACAwAAAAAAAAAAAAAAAAAAAREgwf/aAAgBAQABPyFs0mn/2gAMAwEAAgADAAAAEJPP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHBABAAIDAAMAAAAAAAAAAAAAASExABFBEGGR/9oACAEBAAE/EE3HLyCRd0wNN9xIZfvvz//Z')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"img\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"alt\": \"树结构示意\",\n    \"title\": \"树结构示意\",\n    \"src\": \"/static/bc39d77f54affdee6bb259153f9b99c8/23359/tree.jpg\",\n    \"srcSet\": [\"/static/bc39d77f54affdee6bb259153f9b99c8/fca29/tree.jpg 259w\", \"/static/bc39d77f54affdee6bb259153f9b99c8/f4507/tree.jpg 518w\", \"/static/bc39d77f54affdee6bb259153f9b99c8/23359/tree.jpg 768w\"],\n    \"sizes\": \"(max-width: 768px) 100vw, 768px\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    },\n    \"loading\": \"lazy\"\n  }), \"\\n  \"), \"\\n    \"), \"\\n    \", mdx(\"figcaption\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-figcaption\"\n  }, \"\\u6811\\u7ED3\\u6784\\u793A\\u610F\"), \"\\n  \")), mdx(\"p\", null, \"\\u7EC8\\u4E8E\\u5230\\u4E86\\u6570\\u7684\\u90E8\\u5206\\uFF0C\\u8FD9\\u662F\\u5E38\\u89C1\\u7B97\\u6CD5\\u4E2D\\u7ECF\\u5E38\\u6D89\\u53CA\\u7684\\u90E8\\u5206\\u3002\"), mdx(\"p\", null, \"\\u6811\\u7684\\u7ED3\\u6784\\u987E\\u540D\\u601D\\u4E49\\uFF0C\\u5177\\u6709\\u6811\\u72B6\\u7ED3\\u6784\\u6027\\u8D28\\u7684\\u6570\\u636E\\u96C6\\u5408\\u3002\\u6BD4\\u5982\\u524D\\u7AEF\\u7ECF\\u5E38\\u89C1\\u5230\\u7684\\u5C31\\u662F \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"element.children\"), \" \\u7684 \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"html\"), \" \\u6811\\uFF0C\\u6BD4\\u5982\\u6E32\\u67D3\\u7684\\u6587\\u4EF6\\u5217\\u8868\\u7EC4\\u4EF6\\u3001\\u4E0A\\u4E0B\\u7EA7\\u5217\\u8868\\u7EC4\\u4EF6\\u3001\\u5730\\u7406\\u4F4D\\u7F6E\\u7EC4\\u4EF6\\u7B49\\uFF0C\\u6570\\u636E\\u6E90\\u57FA\\u672C\\u4E5F\\u662F \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"\\u6811\"), \" \\u7684\\u7ED3\\u6784\\uFF0C\\u975E\\u5E38\\u5E38\\u89C1\\u3002\"), mdx(\"h4\", null, \"3.4.1 \\u4E8C\\u53C9\\u6811\\uFF08Binary Tree\\uFF09\"), mdx(\"p\", null, mdx(\"figure\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-figure\",\n    \"style\": {}\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"1035px\"\n    }\n  }, \"\\n      \", mdx(\"a\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-link\",\n    \"href\": \"/static/7bbee01e120c08da7b21102e6965eb45/5ffb6/binarytree.jpg\",\n    \"style\": {\n      \"display\": \"block\"\n    },\n    \"target\": \"_blank\",\n    \"rel\": [\"noopener\"]\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"23.166023166023166%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAFABQDASIAAhEBAxEB/8QAFwABAAMAAAAAAAAAAAAAAAAAAAECBf/EABYBAQEBAAAAAAAAAAAAAAAAAAEAAv/aAAwDAQACEAMQAAAB3ILNQn//xAAXEAADAQAAAAAAAAAAAAAAAAAAARAR/9oACAEBAAEFAprP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAFxAAAwEAAAAAAAAAAAAAAAAAAAEQgf/aAAgBAQAGPwLBT//EABoQAAICAwAAAAAAAAAAAAAAAAABITFRYZH/2gAIAQEAAT8hcU5yKg+myz//2gAMAwEAAgADAAAAEAwf/8QAFREBAQAAAAAAAAAAAAAAAAAAARD/2gAIAQMBAT8QSf/EABYRAAMAAAAAAAAAAAAAAAAAAAABEf/aAAgBAgEBPxCIiP/EABoQAQEBAQADAAAAAAAAAAAAAAERIQAxcYH/2gAIAQEAAT8QSakYqntOBN3matr09hdOZ83v/9k=')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"img\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"alt\": \"二叉树和相关概念\",\n    \"title\": \"二叉树和相关概念\",\n    \"src\": \"/static/7bbee01e120c08da7b21102e6965eb45/dcf47/binarytree.jpg\",\n    \"srcSet\": [\"/static/7bbee01e120c08da7b21102e6965eb45/fca29/binarytree.jpg 259w\", \"/static/7bbee01e120c08da7b21102e6965eb45/f4507/binarytree.jpg 518w\", \"/static/7bbee01e120c08da7b21102e6965eb45/dcf47/binarytree.jpg 1035w\", \"/static/7bbee01e120c08da7b21102e6965eb45/5ffb6/binarytree.jpg 1203w\"],\n    \"sizes\": \"(max-width: 1035px) 100vw, 1035px\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    },\n    \"loading\": \"lazy\"\n  }), \"\\n  \"), \"\\n    \"), \"\\n    \", mdx(\"figcaption\", {\n    parentName: \"figure\",\n    \"className\": \"gatsby-resp-image-figcaption\"\n  }, \"\\u4E8C\\u53C9\\u6811\\u548C\\u76F8\\u5173\\u6982\\u5FF5\"), \"\\n  \")), mdx(\"p\", null, \"\\u662F\\u4E00\\u79CD\\u5178\\u578B\\u7684\\u6811\\u6811\\u72B6\\u7ED3\\u6784\\u3002\\u6BCF\\u4E00\\u4E2A\\u8282\\u70B9\\u6700\\u591A\\u6709\\u4E24\\u4E2A\\u5206\\u652F\\u7684\\u6811\\u7ED3\\u6784\\uFF0C\\u901A\\u5E38\\u5206\\u652F\\u88AB\\u79F0\\u4F5C \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"\\u5DE6\\u5B50\\u6811\"), \" \\u548C \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"\\u53F3\\u5B50\\u6811\"), \" \\uFF0C\\u5206\\u652F\\u5177\\u6709\\u5DE6\\u53F3\\u6B21\\u5E8F\\u3002\"), mdx(\"p\", null, \"\\u4E8C\\u53C9\\u6811\\u6709\\u4EE5\\u4E0B\\u51E0\\u4E2A\\u6027\\u8D28\\uFF1A\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u4E8C\\u53C9\\u6811\\u7B2C \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"i\"), \" \\u5C42\\u4E0A\\u7684\\u8282\\u70B9\\u6570\\u76EE\\u6700\\u591A\\u4E3A \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"2^(i-1)\"), \"\\u3002\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u6DF1\\u5EA6\\u4E3A \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"k\"), \" \\u7684\\u4E8C\\u53C9\\u6811\\u81F3\\u591A\\u6709 \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"2^k-1\"), \" \\u4E2A\\u8282\\u70B9\\u3002\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u5305\\u542B \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"n\"), \" \\u4E2A\\u8282\\u70B9\\u7684\\u4E8C\\u53C9\\u6811\\u7684\\u9AD8\\u5EA6\\u81F3\\u5C11\\u4E3A \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"log2\"), \"\\u3002\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u5728\\u4EFB\\u610F\\u4E00\\u68F5\\u4E8C\\u53C9\\u6811\\u4E2D\\uFF0C\\u82E5\\u7EC8\\u7AEF\\u8282\\u70B9\\u7684\\u4E2A\\u6570\\u4E3A \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"n0\"), \"\\uFF0C\\u5EA6\\u4E3A \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"2\"), \" \\u7684\\u8282\\u70B9\\u6570\\u4E3A \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"n2\"), \"\\uFF0C\\u5219 \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"n0 = n2 + 1\"), \"\\u3002\")), mdx(\"p\", null, \"\\u4E8C\\u53C9\\u6811\\u7B2C i \\u5C42\\u6700\\u591A\\u62E5\\u6709 2^(i-1) \\u4E2A\\u8282\\u70B9\\uFF0C\\u6DF1\\u5EA6\\u4E3A k \\u7684\\u4E8C\\u53C9\\u6811\\u6700\\u591A\\u5171\\u6709 2^(k+1)-1 \\u4E2A\\u8282\\u70B9\\uFF0C\\u4E14\\u5B9A\\u4E49\\u6839\\u8282\\u70B9\\u6240\\u5728\\u7684\\u5C42\\u7EA7 i=0\\uFF0C\\u6240\\u5728\\u7684\\u6DF1\\u5EA6 k=0\\u3002\"), mdx(\"p\", null, \"\\u4EE3\\u7801\\u5B9E\\u73B0\\u4E00\\u4E2A\\u4E8C\\u53C9\\u6811\\uFF1A\"), mdx(RunTSX, {\n    codeStr: binarytreeStr,\n    mdxType: \"RunTSX\"\n  }), mdx(\"p\", null, \"\\u4E8C\\u53C9\\u6811\\u8FD9\\u5757\\u6709\\u975E\\u5E38\\u591A\\u7684\\u77E5\\u8BC6\\u70B9\\uFF1A\\u4E8C\\u53C9\\u6811\\u7684\\u524D\\u4E2D\\u540E\\u5E8F\\u904D\\u5386\\u3001\\u4E8C\\u53C9\\u641C\\u7D22\\u6811\\u3001\\u5E73\\u8861\\u4E8C\\u53C9\\u6811\\u3001\\u5B8C\\u5168\\u4E8C\\u53C9\\u6811\\u3001\\u6700\\u5927\\uFF08\\u5C0F\\uFF09\\u5806\\u3001\\u7EA2\\u9ED1\\u6811\\u3001B+\\u6811\\u7B49\\u7B49\\u3002\\u4E0B\\u9762\\u5206\\u522B\\u8BF4\\u4E00\\u4E0B\\uFF1A\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u4E8C\\u53C9\\u6811\\u7684\\u904D\\u5386\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u5B8C\\u5168\\u4E8C\\u53C9\\u6811\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u6700\\u5927\\u6700\\u5C0F\\u5806\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u4E8C\\u53C9\\u641C\\u7D22\\u6811\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u5E73\\u8861\\u4E8C\\u53C9\\u6811\")), mdx(\"h5\", null, \"3.4.1.1 \\u4E8C\\u53C9\\u6811\\u904D\\u5386\"), mdx(\"p\", null, \"\\u524D\\u4E2D\\u540E\\u904D\\u5386\\u5E76\\u4E0D\\u662F\\u76F4\\u89C2\\u7684\\u5DE6\\u4E2D\\u53F3\\u7684\\u610F\\u601D\\uFF0C\\u904D\\u5386\\u90FD\\u662F\\u4ECE\\u5DE6\\u5230\\u53F3\\uFF0C\\u53EA\\u662F\\u6839\\u8282\\u70B9\\u7684\\u5904\\u7406\\u65F6\\u673A\\u662F \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"(\\u6839)\\u5DE6\\u53F3\"), \" \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"\\u5DE6(\\u6839)\\u53F3\"), \" \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"\\u5DE6\\u53F3(\\u6839)\"), \"\\uFF1B\\u8BF4\\u767D\\u4E86\\u662F\\u5148\\u5904\\u7406\\u8FD8\\u662F\\u5148\\u6DF1\\u5165\\uFF0C\\u5982\\u679C\\u4E8C\\u53C9\\u6811\\u662F\\u5E73\\u8861\\u7684\\uFF0C\\u5F00\\u59CB\\u8282\\u70B9\\u7684\\u5904\\u7406\\u5728\\u524D\\u4E2D\\u540E\\u7684\\u60C5\\u51B5\\u662F\\u5148\\u8F93\\u51FA\\uFF0C\\u8F93\\u51FA\\u4E00\\u534A\\uFF0C\\u8FD8\\u662F\\u8F93\\u51FA\\u5168\\u90E8\\u4E4B\\u540E\\u624D\\u53BB\\u5904\\u7406\\u3002\"), mdx(\"p\", null, \"\\u7ED9\\u5B9A\\u4E00\\u4E2A\\u4E8C\\u53C9\\u6811\\uFF0C\\u5199\\u51FA\\u524D\\u4E2D\\u540E\\u5E8F\\uFF1A\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\"\n  }, \"-           6\\n-         /   \\\\\\n-        3     8\\n-       / \\\\   / \\\\\\n-      2   4 7   9\\n\\n\\u524D\\u5E8F\\uFF1A6324879\\n\\u4E2D\\u5E8F\\uFF1A2346789\\n\\u540E\\u5E8F\\uFF1A2437986\\n\")), mdx(OrgChart, {\n    codeStr: ercha,\n    mdxType: \"OrgChart\"\n  }), mdx(\"hr\", null), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"\\u524D\\u5E8F\\u904D\\u5386\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-ts\"\n  }, \"preOrderTraverse(cb: Function, node: BinaryTreeNode<T> | null): void {\\n  if (node == null) return\\n  cb(node.value) // \\u8BBF\\u95EE\\u8282\\u70B9\\n  preOrderTraverse(cb, node.left) // \\u904D\\u5386\\u5DE6\\u5B50\\u6811\\n  preOrderTraverse(cb, node.right) // \\u904D\\u5386\\u53F3\\u5B50\\u6811\\n}\\n\")), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"\\u4E2D\\u5E8F\\u904D\\u5386\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-ts\"\n  }, \"inOrderTraverse(cb: Function, node: BinaryTreeNode<T> | null): void {\\n  if (node == null) return\\n  inOrderTraverse(cb, node.left) // \\u904D\\u5386\\u5DE6\\u5B50\\u6811\\n  cb(node.value) // \\u8BBF\\u95EE\\u8282\\u70B9\\n  inOrderTraverse(cb, node.right) // \\u904D\\u5386\\u53F3\\u5B50\\u6811\\n}\\n\")), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"\\u540E\\u5E8F\\u904D\\u5386\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-ts\"\n  }, \"postOrderTraverse(cb: Function, node: BinaryTreeNode<T> | null): void {\\n  if (node == null) return\\n  postOrderTraverse(cb, node.left) // \\u904D\\u5386\\u5DE6\\u5B50\\u6811\\n  postOrderTraverse(cb, node.right) // \\u904D\\u5386\\u53F3\\u5B50\\u6811\\n  cb(node.value) // \\u8BBF\\u95EE\\u8282\\u70B9\\n}\\n\")), mdx(\"p\", null, \"\\u4EE5\\u4E0A\\u662F\\u9012\\u5F52\\u7248\\u672C\\u7684\\uFF0C\\u5F88\\u7ECF\\u5178\\u7684\\u9012\\u5F52\\uFF0C\\u5F88\\u7B80\\u5355\\u3002\"), mdx(\"p\", null, \"\\u8FD8\\u6709\\u8FED\\u4EE3\\u7248\\u672C\\u7684\\uFF0C\\u6BD4\\u8F83\\u590D\\u6742\\u70B9\\uFF0C\\u524D\\u5E8F\\u548C\\u4E2D\\u5E8F\\u6BD4\\u8F83\\u597D\\u7406\\u89E3\\uFF0C\\u57FA\\u672C\\u601D\\u8DEF\\u5C31\\u662F\\u4F7F\\u7528\\u5806\\u6808\\u6765\\u50A8\\u5B58\\u5DF2\\u904D\\u5386\\u7684\\u8282\\u70B9\\uFF0C\\u5B9E\\u73B0\\u4E00\\u4E2A\\u6D41\\u7A0B\\u5904\\u7406\\u4E24\\u4E2A\\u5206\\u652F\\uFF1A\\u538B\\u5165\\u5806\\u6808\\u662F\\u5DE6\\u8FB9\\u5206\\u652F\\uFF0C\\u4E0D\\u80FD\\u518D\\u538B\\u7684\\u65F6\\u5019\\u5230\\u5206\\u652F\\u6700\\u5E95\\u90E8\\uFF0C\\u5F39\\u51FA\\u7684\\u65F6\\u5019\\u5C31\\u662F\\u6839\\u8282\\u70B9\\u8F93\\u51FA\\uFF0C\\u5207\\u6362\\u5230\\u53F3\\u5206\\u652F\\u7684\\u65F6\\u5019\\u3002\"), mdx(\"p\", null, \"\\u8FED\\u4EE3\\u7684\\u540E\\u5E8F\\uFF08\\u5DE6\\u53F3\\u6839\\uFF09\\u6BD4\\u8F83\\u9EBB\\u70E6\\uFF0C\\u5B89\\u88C5\\u4E0A\\u9762\\u7684\\u5806\\u6808\\uFF0C\\u4E0D\\u597D\\u5224\\u65AD\\u53F3\\u4FA7\\u5206\\u652F\\u5904\\u7406\\u7ED3\\u675F\\u7684\\u65F6\\u673A\\uFF0C\\u6BD4\\u8F83\\u5DE7\\u7684\\u65B9\\u6CD5\\u662F\\u7528\\uFF08\\u6839\\u53F3\\u5DE6\\uFF09\\u7684\\u65B9\\u5F0F\\u8F6C\\u4E3A\\u53CD\\u7684\\u524D\\u5E8F\\u904D\\u5386\\uFF0C\\u7136\\u540E\\u6700\\u540E\\u7ED3\\u679C\\u5728\\u7FFB\\u8F6C\\u4E00\\u4E0B\\uFF0C\\u4EE3\\u7801\\u89C1\\u4E0A\\u9762\\u7684 Demo\\u3002\"), mdx(\"p\", null, \"\\u4E0B\\u9762\\u8FD9\\u4E2A\\u662F\\u8FED\\u4EE3\\u7248\\u672C\\u7684\\u524D\\u5E8F\\u3001\\u540E\\u5E8F\\u904D\\u5386\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-ts\"\n  }, \"preOrderTraverse2(cb: Function, node: BinaryTreeNode<T> | null): void {\\n  if (node == null) return\\n  let current = node\\n  // \\u904D\\u5386/\\u8FED\\u4EE3\\u7248\\u672C\\uFF0C\\u6709\\u4E24\\u4E2A\\u5206\\u652F\\uFF0C\\u904D\\u5386\\u64CD\\u4F5C\\u6CA1\\u529E\\u6CD5\\u540C\\u65F6\\u8FDB\\u5165\\u4E24\\u4E2A\\u5206\\u652F\\u5904\\u7406\\uFF0C\\u6240\\u4EE5\\u9700\\u8981\\u8BB0\\u5F55\\u6BCF\\u4E2A\\u8282\\u70B9\\n  // \\u56E0\\u6B64\\u975E\\u9012\\u5F52\\u7684\\u904D\\u5386\\u9700\\u8981\\u7528\\u5230\\u6808\\n  let stack = []\\n  while (current || stack.length > 0) {\\n    // \\u5DE6\\u8FB9\\u4E00\\u76F4\\u8D70\\u5230\\u6700\\u5DE6\\u8FB9\\uFF0C\\u987A\\u8DEF\\u5C06\\u5168\\u90E8\\u8282\\u70B9\\u5148\\u4FDD\\u5B58\\uFF0C\\u65B9\\u4FBF\\u56DE\\u5934\\u5904\\u7406\\uFF0C\\u4E0D\\u7136\\u5C31\\u4E22\\u4E86\\n    while (current) {\\n      cb(current.value) // \\u524D\\u5E8F\\u5C31\\u662F\\u4E0D\\u7BA1\\u5DE6\\u53F3\\u5206\\u652F\\uFF0C\\u6211\\u5148\\u8F93\\u51FA\\u5F53\\u524D\\u503C\\u5C31\\u662F\\u4E86\\n      stack.push(current)\\n      current = current.left\\n    }\\n    // \\u53F3\\u4FA7\\u5206\\u652F\\u53EF\\u80FD\\u4E0B\\u9762\\u4ECD\\u7136\\u6709\\u5DE6\\u53F3\\u5206\\u652F\\uFF0C\\u8FD4\\u56DE\\u6700\\u4E0A\\u9762\\u5373\\u53EF(\\u6CA1\\u6709\\u53F3\\u5206\\u652F\\u7684\\u8BDD\\uFF0C\\u5982\\u679C\\u5806\\u6808\\u6709\\uFF0C\\u4F9D\\u7136\\u53EF\\u4EE5\\u5904\\u7406)\\n    // \\u4E00\\u8DEF\\u5411\\u4E0A\\u8FD4\\u56DE\\u5C31\\u80FD\\u904D\\u5386\\u6574\\u4E2A\\u6811\\u4E86\\n    if (stack.length > 0) {\\n      let lastStore = stack.pop()\\n      // cb(current.value) // \\u5982\\u679C\\u4E2D\\u5E8F\\u904D\\u5386\\u6B64\\u65F6\\u8F93\\u51FA\\uFF0C\\u4E0B\\u4E00\\u6B65\\u8FDB\\u5165\\u53F3\\u4FA7\\u5206\\u652F\\u5904\\u7406\\n      // \\u8FD9\\u53E5\\u7684\\u76EE\\u7684\\u662F\\u518D\\u53F3\\u4FA7\\u5B50\\u6811\\u6709\\u5DE6\\u6811\\uFF0C\\u9700\\u8981\\u518D\\u5165\\u6808\\uFF08\\u5F00\\u59CB\\u5904\\u7406\\u53F3\\u4FA7\\u5206\\u652F\\u4E86\\uFF09\\n      current = lastStore.right\\n    }\\n  }\\n}\\npostOrderTraverse2(cb: Function, node: BinaryTreeNode<T> | null): void {\\n  if (node == null) return\\n  let current = node\\n  let stack = []\\n  let lastDeal = null\\n  // \\u540E\\u5E8F\\u7684\\u7A0D\\u5FAE\\u590D\\u6742\\u70B9\\uFF0C\\u56E0\\u4E3A\\u6D89\\u53CA\\u5230\\u53F3\\u4FA7\\u6811\\u5B8C\\u6210\\u540E\\u624D\\u80FD\\u8F93\\u51FA\\n  // \\u76F8\\u6BD4\\u4E0A\\u9762\\u7684\\uFF0C\\u5F00\\u59CB\\u5904\\u7406\\u53F3\\u4FA7\\u7684\\u65F6\\u5019\\u4E0D\\u63A8\\u51FA\\u6570\\u636E\\uFF0C\\u800C\\u662F\\u53F3\\u4FA7\\u5168\\u90FD\\u5904\\u7406\\u5B8C\\u624D\\u63A8\\u51FA\\u3002\\n  // \\u589E\\u52A0\\u4E86\\u4E00\\u4E2A\\u8BB0\\u5FC6\\u53D8\\u91CF\\uFF0C\\u5982\\u679C\\u521A\\u624D\\u5904\\u7406\\u7684\\u662F\\u53F3\\u4FA7\\u6570\\u636E\\uFF0C\\u8868\\u793A\\u53F3\\u4FA7\\u5904\\u7406\\u5B8C\\u4E86\\uFF0C\\u5982\\u679C\\u521A\\u624D\\u5904\\u7406\\u7684\\u4E0D\\u662F\\uFF0C\\u8BF4\\u660E\\u53F3\\u4FA7\\u8FD8\\u6CA1\\u6709\\u5904\\u7406\\uFF0C\\u5176\\u4F59\\u7684\\u548C\\u524D\\u4E2D\\u5E8F\\u76F8\\u540C\\n  // \\u91CD\\u70B9\\u5728\\u600E\\u4E48\\u533A\\u5206\\u53F3\\u4FA7\\u6811\\u5DF2\\u7ECF\\u5904\\u7406\\u4E86\\uFF0C\\u8FD8\\u662F\\u9700\\u8981\\u65B0\\u8FDB\\u5165\\n  while (current || stack.length > 0) {\\n    while (current) {\\n      stack.push(current)\\n      current = current.left\\n    }\\n    if (stack.length > 0) {\\n      let lastStore = stack[stack.length - 1]\\n      // \\u5F53\\u524D\\u7684\\u72B6\\u6001\\u662F\\u5DE6\\u8FB9\\u6811\\u904D\\u5386\\u5B8C\\u4E86\\uFF0C\\u8FD9\\u4E2A\\u65F6\\u5019\\u4ECE\\u5806\\u6808\\u4E2D\\u6700\\u540E\\u4E00\\u4E2A\\u5224\\u65AD\\n      // \\u4E00\\u79CD\\u60C5\\u51B5\\u662F\\u8FD9\\u4E2A\\u8282\\u70B9\\u53F3\\u4FA7\\u662F\\u6CA1\\u6709\\u538B\\u5165\\u8FC7\\u5806\\u6808\\uFF0C\\u9700\\u8981\\u5C06\\u53F3\\u4FA7\\u7684\\u91CD\\u65B0\\u8D70\\u6536\\u96C6\\u7684\\u6D41\\u7A0B\\n      // \\u53E6\\u4E00\\u79CD\\u662F\\u53F3\\u4FA7\\u5206\\u652F\\u5F39\\u51FA\\uFF0C\\u73B0\\u5728\\u8FD9\\u4E2A\\u8282\\u70B9\\u53F3\\u4FA7\\u7684\\u662F\\u4E0A\\u4E00\\u4E2A\\u5F39\\u51FA\\u7684\\u8282\\u70B9 lastDeal \\u8BF4\\u660E\\u53F3\\u4FA7\\u7684\\u5206\\u652F\\u5DF2\\u7ECF\\u5F39\\u5B8C\\u4E86\\uFF0C\\u8FD9\\u4E2A\\u8282\\u70B9\\u5DE6\\u53F3\\u90FD\\u5904\\u7406\\u4E86\\uFF0C\\u53EF\\u4EE5\\u8F93\\u51FA\\u8FD9\\u4E2A\\u6839\\u4E86\\n      if (lastStore.right && lastStore.right !== lastDeal) current = lastStore.right\\n      else {\\n        lastDeal = stack.pop()\\n        cb(lastDeal)\\n      }\\n    }\\n  }\\n}\\n\")), mdx(\"h5\", null, \"3.4.1.2 \\u5B8C\\u5168\\u4E8C\\u53C9\\u6811 (Complete Binary Tree)\"), mdx(\"p\", null, \"\\u4E8C\\u53C9\\u6811\\u4ECE\\u5DE6\\u5230\\u53F3\\u586B\\u5145\"), mdx(\"p\", null, \"// TODO\"), mdx(\"h5\", null, \"3.4.1.3 \\u6700\\u5C0F\\u5806\\uFF08\\u6700\\u5927\\u5806\\uFF09\"), mdx(\"p\", null, \"\\u6700\\u5927\\u6700\\u5C0F\\u5806\\u7684\\u6982\\u5FF5\\u975E\\u5E38\\u7684\\u5E38\\u89C1\\uFF0C\\u5C24\\u5176\\u662F\\u5728 Leet-Code \\u5237\\u9898\\u7684\\u8FC7\\u7A0B\\u4E2D\\uFF0C\\u5F88\\u591A\\u7B97\\u6CD5\\u590D\\u6742\\u5EA6\\u6BD4\\u8F83\\u597D\\u7684\\u6392\\u5E8F\\u6216\\u8005\\u9009\\u62E9\\u7B97\\u6CD5\\u90FD\\u662F\\u6D89\\u53CA\\u5230\\u6700\\u5927\\u6700\\u5C0F\\u5806\\u3002\"), mdx(\"p\", null, \"// TODO\"), mdx(\"h5\", null, \"3.4.1.4 \\u4E8C\\u53C9\\u641C\\u7D22\\u6811\\uFF08Binary Search Tree\\uFF09\"), mdx(\"p\", null, \"\\u4E8C\\u53C9\\u641C\\u7D22\\u6811\\u662F\\u7279\\u6B8A\\u7684\\u4E8C\\u53C9\\u6811\\uFF0C\\u6DFB\\u52A0\\u4E86\\u4E0B\\u9762\\u7684\\u9650\\u5236\\uFF1A\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u82E5\\u5B83\\u7684\\u5DE6\\u5B50\\u6811\\u4E0D\\u7A7A\\uFF0C\\u5219\\u5DE6\\u5B50\\u6811\\u4E0A\\u6240\\u6709\\u7ED3\\u70B9\\u7684\\u503C\\u5747\\u5C0F\\u4E8E\\u5B83\\u7684\\u6839\\u7ED3\\u70B9\\u7684\\u503C\\uFF1B\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u82E5\\u5B83\\u7684\\u53F3\\u5B50\\u6811\\u4E0D\\u7A7A\\uFF0C\\u5219\\u53F3\\u5B50\\u6811\\u4E0A\\u6240\\u6709\\u7ED3\\u70B9\\u7684\\u503C\\u5747\\u5927\\u4E8E\\u5B83\\u7684\\u6839\\u7ED3\\u70B9\\u7684\\u503C\\uFF1B\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u4EFB\\u610F\\u8282\\u70B9\\u7684\\u5DE6\\u3001\\u53F3\\u5B50\\u6811\\u4E5F\\u5206\\u522B\\u4E3A\\u4E8C\\u53C9\\u67E5\\u627E\\u6811\\uFF1B\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"\\u6CA1\\u6709\\u952E\\u503C\\u76F8\\u7B49\\u7684\\u8282\\u70B9\\uFF1B\")), mdx(\"p\", null, \"\\u7B80\\u5355\\u6765\\u8BF4\\u5C31\\u662F\\u5DE6\\u8FB9\\u7684\\u8282\\u70B9\\u8D8A\\u6765\\u8D8A\\u5C0F\\uFF0C\\u53F3\\u8FB9\\u7684\\u8282\\u70B9\\u8D8A\\u6765\\u8D8A\\u5927\\uFF0C\\u76EE\\u7684\\u662F\\u5728\\u6811\\u4E2D\\u68C0\\u7D22\\u6570\\u636E\\u7684\\u65F6\\u5019\\uFF0C\\u66F4\\u5FEB\\u7684\\u5411\\u6B63\\u786E\\u7684\\u5206\\u652F\\u6DF1\\u5165\\uFF0C\\u6BCF\\u6B21\\u6DF1\\u5165\\u90FD\\u80FD\\u8282\\u7701\\u4E00\\u534A\\u7684\\u67E5\\u8BE2\\u3002\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"\\u63D2\\u5165\")), mdx(\"p\", null, \"\\u63D2\\u5165\\u7684\\u903B\\u8F91\\u662F\\u5C06\\u5143\\u7D20\\u63D2\\u5165\\u5230\\u67D0\\u4E2A\\u6700\\u4E0B\\u9762\\u7684\\u8282\\u70B9\\uFF0C\\u89C4\\u5219\\u662F\\u4E0E\\u5F53\\u524D\\u8282\\u70B9\\u6BD4\\u8F83\\uFF0C\\u5C0F\\u7684\\u5411\\u5DE6\\u8FB9\\u8D70\\uFF0C\\u5927\\u7684\\u5411\\u53F3\\u8FB9\\u8D70\\uFF0C\\u76F4\\u5230\\u8D70\\u5230\\u6700\\u4E0B\\u5C42\\u3002\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"\\u5220\\u9664\"), \" \"), mdx(\"p\", null, \"\\u53F6\\u5B50\\u8282\\u70B9\\u7684\\u5220\\u9664\\uFF0C\\u76F4\\u63A5\\u5220\\u9664\\u5373\\u53EF\\uFF0C\\u5982\\u679C\\u5305\\u542B\\u4E00\\u4E2A\\u53F6\\u5B50\\u8282\\u70B9\\uFF0C\\u76F4\\u63A5\\u4E0A\\u79FB\\u5230\\u88AB\\u5220\\u9664\\u7684\\u4F4D\\u7F6E\\u5373\\u53EF\\u3002\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\"\n  }, \"-         8         ->         8\\n-       /   \\\\                /   \\\\\\n-      4     10             4     10\\n-     / \\\\    / \\\\           / \\\\    /\\n-   (1)  5  9   (11)      3   5  9\\n-     \\\\\\n-      3\\n\")), mdx(\"p\", null, \"\\u5305\\u542B\\u4E24\\u4E2A\\u8282\\u70B9\\u5206\\u652F\\u7684\\u5220\\u9664\\u903B\\u8F91\\u7565\\u5FAE\\u9EBB\\u70E6\\uFF0C\\u4F8B\\u5982\\u4E0B\\u9762\\u8FD9\\u4E2A\\u6811\\u5220\\u9664 8 \\u8282\\u70B9\\u540E\\uFF0C\\u6309\\u7167\\u4E00\\u822C\\u60F3\\u6CD5\\u5DE6\\u4FA7\\u8282\\u70B9 4 \\u548C\\u53F3\\u4FA7 10 \\u90FD\\u53EF\\u4EE5\\u63D0\\u5230 8 \\u7684\\u4F4D\\u7F6E\\uFF0C\\u4F46\\u662F\\u65E0\\u8BBA4\\u8FD8\\u662F10 \\u63D0\\u4E0A\\u6765\\u4E4B\\u540E\\u5B50\\u6811\\u7684\\u4E24\\u4E2A\\u8282\\u70B9\\uFF0C\\u4ECD\\u7136\\u9700\\u8981\\u5904\\u7406\\u3002\"), mdx(\"p\", null, \"\\u5B9E\\u9645\\u4E0A\\u5E94\\u8BE5\\u9009\\u62E9\\u88AB\\u5220\\u9664\\u8282\\u70B9\\u7684\\u5DE6\\u5B50\\u6811\\u6700\\u53F3\\u5143\\u7D20\\uFF0C\\u6216\\u8005\\u53F3\\u5B50\\u6811\\u7684\\u6700\\u5DE6\\u5143\\u7D20\\u4EE3\\u66FF\\u88AB\\u5220\\u9664\\u7684\\u8282\\u70B9\\uFF1A\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\"\n  }, \"-        (8)         ->        6           or        9\\n-       /   \\\\                /   \\\\                 /   \\\\\\n-      4     10             4     10              4     10\\n-     / \\\\    / \\\\           / \\\\    / \\\\            / \\\\     \\\\ \\n-    1   5  9   11        1   5  9   11         1   5     11\\n-         \\\\                                          \\\\\\n-          6                                          6\\n\")), mdx(\"p\", null, \"// TODO\"), mdx(\"h4\", null, \"3.3 \\u5806\\u79EF\\uFF08Heap\\uFF09\"), mdx(\"h2\", null, \"\\u4E09\\u3001\\u4E3A\\u4EC0\\u4E48\\u6570\\u636E\\u7ED3\\u6784\\u548C\\u7B97\\u6CD5\\u653E\\u5728\\u4E00\\u8D77\\u8BF4\"), mdx(\"p\", null, \"// TODO\"), mdx(\"h2\", null, \"\\u56DB\\u3001 \\u5E38\\u89C1\\u7B97\\u6CD5\\u601D\\u60F3\"), mdx(\"p\", null, \"\\u8D2A\\u5A6A\\u6CD5\\u3001\\u5206\\u6CBB\\u6CD5\\u3001\\u7A77\\u4E3E\\u6CD5\\u3001\\u52A8\\u6001\\u89C4\\u5212\\uFF0C\\u56DE\\u6EAF\\u6CD5\\u3002\"), mdx(\"p\", null, \"// TODO\"));\n}\n;\nMDXContent.isMDXComponent = true;"}}}}